From 399ac289f80b7a40aa4210341db6b447cacdcf14 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 09 八月 2022 17:42:33 +0800
Subject: [PATCH] 广告升级,隐私政策整改

---
 app/src/main/java/com/tejia/lijin/app/ui/SplashActivity.java |  145 ++++++++++++++++++++++++++++++------------------
 1 files changed, 91 insertions(+), 54 deletions(-)

diff --git a/app/src/main/java/com/tejia/lijin/app/ui/SplashActivity.java b/app/src/main/java/com/tejia/lijin/app/ui/SplashActivity.java
index 1294f2c..413ecbf 100644
--- a/app/src/main/java/com/tejia/lijin/app/ui/SplashActivity.java
+++ b/app/src/main/java/com/tejia/lijin/app/ui/SplashActivity.java
@@ -35,9 +35,11 @@
 import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
 import com.qq.e.ads.splash.SplashAD;
 import com.qq.e.ads.splash.SplashADListener;
-import com.qq.e.comm.managers.GDTADManager;
+import com.qq.e.comm.managers.GDTAdSdk;
+import com.qq.e.comm.managers.setting.GlobalSetting;
 import com.qq.e.comm.util.AdError;
 import com.tejia.lijin.app.ShoppingApplication;
+import com.tejia.lijin.app.ui.dialog.PermissionAuthNotifyDialog;
 import com.tejia.lijin.app.ui.dialog.UserGuideDialog;
 import com.tejia.lijin.app.ui.dialog.UserProtocolDialog;
 import com.tejia.lijin.app.util.user.UserUtil;
@@ -72,12 +74,17 @@
 import java.util.HashMap;
 import java.util.List;
 
+import androidx.core.app.ActivityCompat;
+import androidx.core.content.ContextCompat;
 import okhttp3.Call;
+
+import static android.content.pm.PackageManager.PERMISSION_DENIED;
+import static android.content.pm.PackageManager.PERMISSION_GRANTED;
 
 /**
  * Created by weikou2015 on 2017/2/20.
  */
-public class SplashActivity extends BaseActivity implements SplashADListener {
+public class SplashActivity extends Activity implements SplashADListener {
     // 鎵�闇�鐨勫叏閮ㄦ潈闄�
     static final String[] PERMISSIONS = new String[]{
             Manifest.permission.READ_PHONE_STATE};//, Manifest.permission.READ_EXTERNAL_STORAGE,
@@ -121,32 +128,26 @@
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_splash);
         initView();
-        setShowRecommend(false);
 //        TopStatusSettings.setStatusViewAndDeepColor(this);
-        ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
-        ActivityManager.RunningTaskInfo info = manager.getRunningTasks(1).get(0);
-        int acitivitynum = info.numActivities;
-        if (acitivitynum > 1) {
-            finish();
-        }
-
         /*鍚屽寲椤堕儴鐘舵�佹爮*/
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
-            Window window = getWindow();
-            window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
-            window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
-                    | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
-            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
-            window.setStatusBarColor(Color.TRANSPARENT);
-            //璁剧疆鐘舵�佹爮鏂囧瓧棰滆壊鍙婂浘鏍囦负娣辫壊
-            window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
-            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
-                try {
-                    Class decorViewClazz = Class.forName("com.android.internal.policy.DecorView");
-                    Field field = decorViewClazz.getDeclaredField("mSemiTransparentStatusBarColor");
-                    field.setAccessible(true);
-                    field.setInt(getWindow().getDecorView(), Color.TRANSPARENT);  //鏀逛负閫忔槑
-                } catch (Exception e) {
+        if (UserUtil.isAgreeUserProtocol(getApplicationContext())) {
+            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+                Window window = getWindow();
+                window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
+                window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
+                        | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
+                window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
+                window.setStatusBarColor(Color.TRANSPARENT);
+                //璁剧疆鐘舵�佹爮鏂囧瓧棰滆壊鍙婂浘鏍囦负娣辫壊
+                window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
+                    try {
+                        Class decorViewClazz = Class.forName("com.android.internal.policy.DecorView");
+                        Field field = decorViewClazz.getDeclaredField("mSemiTransparentStatusBarColor");
+                        field.setAccessible(true);
+                        field.setInt(getWindow().getDecorView(), Color.TRANSPARENT);  //鏀逛负閫忔槑
+                    } catch (Exception e) {
+                    }
                 }
             }
         }
@@ -163,14 +164,33 @@
         iv_splash = findViewById(R.id.iv_splash);
 
         if (UserUtil.isAgreeUserProtocol(this)) {
-            init();
+            nextStep();
         } else {
-            String data = "鎰熻阿鎮ㄥ鐗逛环涓�鐩翠互鏉ョ殑淇′换锛�<br> 鎴戜滑渚濈収鏂扮殑鐩戠瑕佹眰鏉′緥鏇存柊浜�<a href=\"http://h5.tejia.yeshitv.com/privacy.html\" style=\"text-decoration: none;\">銆婇殣绉佹斂绛栥��</a> 鍜�<a href=\"http://h5.tejia.yeshitv.com/user-protocol.html\" style=\"text-decoration: none;\">銆婄敤鎴峰崗璁��</a>锛屼负閲囧彇鐩稿簲瀹夊叏淇濇姢鎺柦锛屽敖鍔涗繚鎶ゆ偍鐨勪釜浜轰俊鎭畨鍏ㄥ彲鎺э紝鐗瑰悜浣犺鏄庡涓嬶細\n" +
-                    "\t\t<br> 1銆佹偍鍦ㄤ娇鐢ㄧ壒浠峰悇椤逛骇鍝佹垨鏈嶅姟鏃讹紝灏嗕細鎻愪緵涓庡叿浣撳姛鑳界浉鍏崇殑涓汉淇℃伅锛堝彲鑳芥秹鍙婂笎鍙枫�佷綅缃�佷氦鏄撶瓑淇℃伅锛夈�俓n" +
-                    "\t\t<br> 2銆佹偍鍙互闅忔椂鏌ヨ銆佹洿姝c�佸垹闄ゆ偍鐨勪釜浜轰俊鎭紝鎴戜滑涔熸彁渚涜处鎴锋敞閿�鐨勬笭閬撱�俓n" +
-                    "\t\t<br> 3銆佹湭缁忔偍鐨勫啀娆″悓鎰忥紝鎴戜滑涓嶄細灏嗕笂杩颁俊鎭敤浜庢偍鏈巿鏉冪殑鍏朵粬鐢ㄩ�旀垨鐩殑銆俓n" +
-                    "\t\t<br> 4銆佹湭缁忕洃鎶や汉鍚屾剰锛屾垜浠笉浼氭敹闆嗕娇鐢�14鍛ㄥ瞾浠ヤ笅锛堝惈14鍛ㄥ瞾锛夋湭鎴愬勾浜轰釜浜轰俊鎭紝涓斾笉浼氬埄鐢ㄥ叾淇℃伅鎺ㄩ�佹柊闂汇�佹椂鏀夸俊鎭�佸箍鍛婄瓑瀹氬悜鎺ㄩ�佹椿鍔ㄣ��";
+            String data = "灏婃暚鐨勭敤鎴�:<br>鎰熻阿鎮ㄥ" + getResources().getString(R.string.app_name) + "涓�鐩翠互鏉ョ殑淇′换锛�<br>";
+            data += "鎴戜滑闈炲父灏婇噸骞朵繚鎶ゆ偍鐨勪釜浜轰俊鎭�侀殣绉併�備负浜嗘洿濂界殑淇濋殰鎮ㄧ殑鏉冨埄锛屽湪鎮ㄤ娇鐢ㄦ垜浠殑浜у搧涔嬪墠锛岃鎮ㄥ姟蹇呭鎱庨槄璇�";
+            data += String.format("<a href='%s'>銆婇殣绉佹斂绛栥��</a>鍜�", "http://h5.tejia.yeshitv.com/privacy.html");
+            data += String.format("<a href='%s'>銆婄敤鎴峰崗璁��</a>", "http://h5.tejia.yeshitv.com/user-protocol.html");
+            data += "鍐呯殑鎵�鏈夋潯娆撅紝<b>灏ゅ叾鏄細<br>" +
+                    "1銆佹垜浠鎮ㄧ殑涓汉淇℃伅锛堝寘鎷絾涓嶉檺浜�<font color='#FF0000'>璁惧MAC鍦板潃銆両MEI/AndroidID/OAID/IMSI/ICCID/GAID/MEID</font>绛変俊鎭級鐨勬敹闆�/淇濆瓨/浣跨敤/瀵瑰鎻愪緵/淇濇姢绛夎鍒欐潯娆�,浠ュ強鎮ㄧ殑鐢ㄦ埛鏉冨埄绛夋潯娆撅紱<br>" +
+                    "2銆佺害瀹氭垜浠殑闄愬埗璐d换銆佸厤璐f潯娆撅紱<br>" +
+                    "3銆佸叾浠栦互鍔犵矖鎴栨枩浣撳瓧杩涜鏍囪瘑鐨勯噸瑕佹潯娆俱��</b><br>" +
+                    "濡傛偍瀵瑰崗璁湁浠讳綍鐤戣檻锛屽彲閫氳繃鐢靛瓙閭锛� tjapp@qq.com 鍚戞垜浠闂紝鎴戜滑灏嗕负鎮ㄧ璇氳В绛斻�傛偍鐐瑰嚮鈥滃悓鎰忊�濈殑琛屼负浠h〃鎮ㄥ凡闃呰瀹屾瘯骞舵帴鍙椾互涓婂崗璁叏閮ㄦ潯娆俱�傚鎮ㄥ悓鎰忎互涓婂崗璁唴瀹癸紝璇锋偍鐐瑰嚮鈥滃悓鎰忊�濓紝寮�濮嬩娇鐢ㄦ偍鐨勪骇鍝併��";
             showUserProtocolAndGuide(data);
+        }
+    }
+
+
+    private void myRequetPermission() {
+        if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) != PERMISSION_GRANTED) {
+            SharedPreferences sharedPreferences = getSharedPreferences("permission", Context.MODE_PRIVATE);
+            //鏄惁闇�瑕佸啀娆¤姹傛潈闄�
+            if (sharedPreferences.getBoolean("show", true))
+                ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, REQUEST_CODE);
+            else {
+                nextStep();
+            }
+        } else {
+            nextStep();
         }
     }
 
@@ -190,15 +210,33 @@
             public void onClick(DialogInterface dialog, int which) {
                 UserUtil.agreeUserProtocol(getApplicationContext());
                 dialog.dismiss();
-                ShoppingApplication.init(ShoppingApplication.application);
-                init();
+                //灞曠ず寮规
+                new PermissionAuthNotifyDialog.Builder(SplashActivity.this).setPositiveButton(null, new DialogInterface.OnClickListener() {
+                    @Override
+                    public void onClick(DialogInterface dialog, int which) {
+                        dialog.dismiss();
+                        myRequetPermission();
+                    }
+                }).create().show();
+                //璇锋眰鏉冮檺
             }
         });
         dialogBuilder.create().show();
 
     }
 
-    private void init() {
+
+    private void nextStep() {
+        ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
+        ActivityManager.RunningTaskInfo info = manager.getRunningTasks(1).get(0);
+        int acitivitynum = info.numActivities;
+        if (acitivitynum > 1) {
+            finish();
+        }
+        if (!ShoppingApplication.init) {
+            ShoppingApplication.init(ShoppingApplication.application);
+        }
+
         if (!AlibcTradeSDK.initState.isInitialized() && !AlibcTradeSDK.initState.isInitializing())
             taobaoInit();
         getSystemParams();
@@ -293,18 +331,21 @@
     @Override
     public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
         super.onRequestPermissionsResult(requestCode, permissions, grantResults);
-        if (requestCode == 1024 && hasAllPermissionsGranted(grantResults)) {
-            GDTAdInfo adInfo = AdUtil.getGDTADInfo(getApplicationContext());
-            if (adInfo == null)
-                return;
-            fetchSplashAD(this, container, skipView, adInfo.getSplashPid(), this, 0);
-        } else {
-            // 濡傛灉鐢ㄦ埛娌℃湁鎺堟潈锛岄偅涔堝簲璇ヨ鏄庢剰鍥撅紝寮曞鐢ㄦ埛鍘昏缃噷闈㈡巿鏉冦��
-            Toast.makeText(this, "搴旂敤缂哄皯蹇呰鐨勬潈闄愶紒璇风偣鍑籠"鏉冮檺\"锛屾墦寮�鎵�闇�瑕佺殑鏉冮檺銆�", Toast.LENGTH_LONG).show();
-            Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
-            intent.setData(Uri.parse("package:" + getPackageName()));
-            startActivity(intent);
-            finish();
+        if (requestCode == REQUEST_CODE) {
+            for (int i = 0; i < permissions.length; i++) {
+                if (grantResults[i] == PERMISSION_GRANTED) {//閫夋嫨浜嗏�滃缁堝厑璁糕��
+                    myRequetPermission();
+                } else {
+                    //鎷掔粷浜嗘巿鏉�
+                    if (grantResults[i] == PERMISSION_DENIED) {
+                        SharedPreferences sharedPreferences = getSharedPreferences("permission", Context.MODE_PRIVATE);
+                        SharedPreferences.Editor editor = sharedPreferences.edit();
+                        editor.putBoolean("show", false);
+                        editor.commit();
+                    }
+                    nextStep();
+                }
+            }
         }
     }
 
@@ -413,7 +454,8 @@
                             GDTAdInfo info = new Gson().fromJson(ad.toString(), GDTAdInfo.class);
                             if (info != null) {
                                 AdUtil.saveGDTADInfo(getApplicationContext(), info);
-                                GDTADManager.getInstance().initWith(SplashActivity.this, info.getAppId());
+                                GlobalSetting.setEnableCollectAppInstallStatus(false);
+                                GDTAdSdk.init(SplashActivity.this, info.getAppId());
                                 loadAD();
                                 iv_splash.postDelayed(new Runnable() {
                                     @Override
@@ -486,10 +528,6 @@
         OkHttpUtils.getInstance().cancelTag(tag2);
         OkHttpUtils.getInstance().cancelTag(tag3);
         handler.removeCallbacksAndMessages(null);
-    }
-
-    private void startPermissionsActivity() {
-        PermissionsActivity.startActivityForResult(this, REQUEST_CODE, true, PERMISSIONS);
     }
 
     @Override
@@ -616,8 +654,7 @@
 
     @Override
     public void onADClicked() {
-        Log.i("AD_DEMO", "SplashADClicked clickUrl: "
-                + (splashAD.getExt() != null ? splashAD.getExt().get("clickUrl") : ""));
+
     }
 
     /**

--
Gitblit v1.8.0