From 7e2ac66d7c532a5725635fa3913789bb17c1e157 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 21 十月 2021 13:46:33 +0800
Subject: [PATCH] 隐私合规,青少年模式,64位兼容

---
 MGVideo/src/com/mugua/mgvideo/ui/SplashActivity.java |   89 +++++++++++++++++++++++++-------------------
 1 files changed, 51 insertions(+), 38 deletions(-)

diff --git a/MGVideo/src/com/mugua/mgvideo/ui/SplashActivity.java b/MGVideo/src/com/mugua/mgvideo/ui/SplashActivity.java
index bf35b65..7ce22e9 100644
--- a/MGVideo/src/com/mugua/mgvideo/ui/SplashActivity.java
+++ b/MGVideo/src/com/mugua/mgvideo/ui/SplashActivity.java
@@ -31,6 +31,7 @@
 import com.mugua.mgvideo.util.ad.SplashAdUtil;
 import com.umeng.analytics.MobclickAgent;
 import com.yeshi.base.entity.ad.AdPositionEnum;
+import com.yeshi.base.utils.BeibeiConstant;
 import com.yeshi.base.utils.ad.AdTypeEnum;
 import com.yeshi.base.utils.ad.AdUtil;
 import com.yeshi.base.utils.ad.CSJConstant;
@@ -44,10 +45,12 @@
 import java.util.List;
 
 import androidx.core.app.ActivityCompat;
+import androidx.fragment.app.FragmentActivity;
 
+import static android.content.pm.PackageManager.PERMISSION_DENIED;
 import static android.content.pm.PackageManager.PERMISSION_GRANTED;
 
-public class SplashActivity extends BaseActivity {
+public class SplashActivity extends FragmentActivity {
 
     boolean isInput = false;
 
@@ -62,46 +65,28 @@
             return;
         }
         setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
-
         String splashLayout = ManifestDataUtil.getAppMetaData(this, "SPLASH_LAYOUT");
-
         int resourceId = getResources().getIdentifier(splashLayout,
                 "layout", getPackageName());
-
-
         setContentView(resourceId);
         fl_ad = findViewById(R.id.fl_splash_ad);
         SharedPreferences preferences = getSharedPreferences("link_page",
                 Context.MODE_PRIVATE);
         isInput = preferences.getBoolean("isInput", false);
-        try {
-            TelephonyManager manager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
-            Build bd = new Build();
-            String model = bd.MODEL;
-            MGVideoApplication.deviceName = model;
-            if ((ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED)) {
-                MGVideoApplication.deviceNumber = manager.getDeviceId();
-            }
-        } catch (Exception e) {
-        }
-        // 鍒濆鍖栧ぇ璁惧
-        SDCardUtil.initStorage(this);
         showProtocol();
     }
 
 
     private void showProtocol() {
-        String appName = getString(R.string.app_name);
-
-        String data = "鎰熻阿鎮ㄥ" + appName + "涓�鐩翠互鏉ョ殑淇′换锛�<br>";
-        data += "鎴戜滑渚濈収鏂扮殑鐩戠瑕佹眰鏉′緥鏇存柊浜�";
+        String data = "灏婃暚鐨勭敤鎴�:<br>鎰熻阿鎮ㄥ" + getResources().getString(R.string.app_name) + "涓�鐩翠互鏉ョ殑淇′换锛�<br>";
+        data += "鎴戜滑闈炲父灏婇噸骞朵繚鎶ゆ偍鐨勪釜浜轰俊鎭�侀殣绉併�備负浜嗘洿濂界殑淇濋殰鎮ㄧ殑鏉冨埄锛屽湪鎮ㄤ娇鐢ㄦ垜浠殑浜у搧涔嬪墠锛岃鎮ㄥ姟蹇呭鎱庨槄璇�";
         data += String.format("<a href='%s'>銆婇殣绉佹斂绛栥��</a>鍜�", getString(R.string.privacy));
         data += String.format("<a href='%s'>銆婄敤鎴峰崗璁��</a>", getString(R.string.agreement));
-        data += "涓洪噰鍙栫浉搴斿畨鍏ㄤ繚鎶ゆ帾鏂斤紝灏藉姏淇濇姢鎮ㄧ殑涓汉淇℃伅瀹夊叏鍙帶锛岀壒鍚戜綘璇存槑濡備笅锛�<br>" +
-                "1銆佹偍鍦ㄤ娇鐢�" + appName + "鍚勯」浜у搧鎴栨湇鍔℃椂锛屽皢浼氭彁渚涗笌鍏蜂綋鍔熻兘鐩稿叧鐨勪釜浜轰俊鎭紙鍙兘娑夊強甯愬彿銆佷綅缃�佸瓨鍌ㄧ瓑淇℃伅锛夈��<br>" +
-                "2銆佹偍鍙互闅忔椂鏌ヨ銆佹洿姝c�佸垹闄ゆ偍鐨勪釜浜轰俊鎭紝鎴戜滑涔熸彁渚涜处鎴锋敞閿�鐨勬笭閬撱��<br>" +
-                "3銆佹湭缁忔偍鐨勫啀娆″悓鎰忥紝鎴戜滑涓嶄細灏嗕笂杩颁俊鎭敤浜庢偍鏈巿鏉冪殑鍏朵粬鐢ㄩ�旀垨鐩殑銆�<br>" +
-                "4銆佹湭缁忕洃鎶や汉鍚屾剰锛屾垜浠笉浼氭敹闆嗕娇鐢�14鍛ㄥ瞾浠ヤ笅锛堝惈14鍛ㄥ瞾锛夋湭鎴愬勾浜轰釜浜轰俊鎭紝涓斾笉浼氬埄鐢ㄥ叾淇℃伅鎺ㄩ�佹柊闂汇�佹椂鏀夸俊鎭�佸箍鍛婄瓑瀹氬悜鎺ㄩ�佹椿鍔ㄣ��";
+        data += "鍐呯殑鎵�鏈夋潯娆撅紝<b>灏ゅ叾鏄細<br>" +
+                "1銆佹垜浠鎮ㄧ殑涓汉淇℃伅锛堝寘鎷絾涓嶉檺浜�<font color='#FF0000'>璁惧MAC鍦板潃銆両MEI/Android ID</font>绛変俊鎭級鐨勬敹闆�/淇濆瓨/浣跨敤/瀵瑰鎻愪緵/淇濇姢绛夎鍒欐潯娆�,浠ュ強鎮ㄧ殑鐢ㄦ埛鏉冨埄绛夋潯娆撅紱<br>" +
+                "2銆佺害瀹氭垜浠殑闄愬埗璐d换銆佸厤璐f潯娆撅紱<br>" +
+                "3銆佸叾浠栦互鍔犵矖鎴栨枩浣撳瓧杩涜鏍囪瘑鐨勯噸瑕佹潯娆俱��</b><br>" +
+                "濡傛偍瀵瑰崗璁湁浠讳綍鐤戣檻锛屽彲閫氳繃鐢靛瓙閭锛� kaouapp@qq.com 鍚戞垜浠闂紝鎴戜滑灏嗕负鎮ㄧ璇氳В绛斻�傛偍鐐瑰嚮鈥滃悓鎰忓苟缁х画鈥濈殑琛屼负浠h〃鎮ㄥ凡闃呰瀹屾瘯骞舵帴鍙椾互涓婂崗璁叏閮ㄦ潯娆俱�傚鎮ㄥ悓鎰忎互涓婂崗璁唴瀹癸紝璇锋偍鐐瑰嚮鈥滃悓鎰忓苟缁х画鈥濓紝寮�濮嬩娇鐢ㄦ偍鐨勪骇鍝併��";
 
         if (!UserUtil.isAgreeUserProtocol(getApplicationContext())) {
             new UserProtocolDialog.Builder(this).setNegativeButton("涓嶅悓鎰�", new DialogInterface.OnClickListener() {
@@ -112,9 +97,9 @@
             }).setPositiveButton("鍚屾剰骞剁户缁�", new DialogInterface.OnClickListener() {
                 @Override
                 public void onClick(DialogInterface dialog, int which) {
+
                     dialog.dismiss();
                     UserUtil.agreeUserProtocol(getApplicationContext());
-                    MGVideoApplication.init(MGVideoApplication.application);
                     //杩涜涓嬩竴姝�
                     if (Build.VERSION.SDK_INT >= 23) {
                         checkAndRequestPermission();
@@ -145,7 +130,6 @@
         MGVideoAPI.getUid(this, "", MGVideoAPI.getDeviceId(this), null,
                 null, "", "",
                 new BasicTextHttpResponseHandler() {
-
                     @Override
                     public void onSuccessPerfect(int statusCode,
                                                  Header[] headers, JSONObject jsonObject)
@@ -217,7 +201,9 @@
                 });
     }
 
-    private void next() {
+    int delayMS = 1000;
+
+    private void nextStep() {
         getUid();
         fl_ad.postDelayed(new Runnable() {
             @Override
@@ -251,9 +237,9 @@
                                         if (StringUtils.isBlank(pid)) {
                                             if (splash != null) {
                                                 if (splash == AdTypeEnum.csj) {
-                                                    pid = CSJConstant.SPLASH_AD;
+                                                    pid = getString(R.string.ad_csj_pid_splash);//CSJConstant.SPLASH_AD;
                                                 } else if (splash == AdTypeEnum.gdt) {
-                                                    pid = GDTConstant.PID_SPLASH_HOT;
+                                                    pid = getString(R.string.ad_gdt_pid_splash);//GDTConstant.GDT_SPLASH_AD_ID;
                                                 }
                                             }
                                         }
@@ -279,8 +265,26 @@
                             }
                         });
             }
-        }, 1000);
+        }, delayMS);
+    }
 
+    private void next() {
+        if (!MGVideoApplication.inited) {
+            MGVideoApplication.init(MGVideoApplication.application, new MGVideoApplication.InitListener() {
+                @Override
+                public void onFinish() {
+                    delayMS = 1;
+                    runOnUiThread(new Runnable() {
+                        @Override
+                        public void run() {
+                            nextStep();
+                        }
+                    });
+                }
+            });
+        } else {
+            nextStep();
+        }
 
     }
 
@@ -383,13 +387,11 @@
     @Override
     public void onResume() {
         super.onResume();
-        MobclickAgent.onPageStart("娆㈣繋椤�");
     }
 
     @Override
     public void onPause() {
         super.onPause();
-        MobclickAgent.onPageEnd("娆㈣繋椤�");
     }
 
     @Override
@@ -476,15 +478,19 @@
     @TargetApi(Build.VERSION_CODES.M)
     private void checkAndRequestPermission() {
         List<String> lackedPermission = new ArrayList<String>();
+        SharedPreferences sharedPreferences = getSharedPreferences("permission", Context.MODE_PRIVATE);
+        boolean showPermission = sharedPreferences.getBoolean("show", true);
+
         if (!(ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED)) {
+
             lackedPermission.add(Manifest.permission.READ_PHONE_STATE);
         }
 
-        if (!(ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)) {
-            lackedPermission.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);
-        }
+//        if (!(ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)) {
+//            lackedPermission.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);
+//        }
 
-        if (lackedPermission.size() != 0) {
+        if (lackedPermission.size() != 0 && showPermission) {
             // 璇锋眰鎵�缂哄皯鐨勬潈闄愶紝鍦╫nRequestPermissionsResult涓啀鐪嬫槸鍚﹁幏寰楁潈闄愶紝濡傛灉鑾峰緱鏉冮檺灏卞彲浠ヨ皟鐢⊿DK锛屽惁鍒欎笉瑕佽皟鐢⊿DK銆�
             String[] requestPermissions = new String[lackedPermission.size()];
             lackedPermission.toArray(requestPermissions);
@@ -510,6 +516,13 @@
             for (int i = 0; i < permissions.length; i++) {
                 if (grantResults[i] == PERMISSION_GRANTED) {//閫夋嫨浜嗏�滃缁堝厑璁糕��
                     checkAndRequestPermission();
+                } else if (grantResults[i] == PERMISSION_DENIED) {
+                    //璁板綍绂佹鐘舵��
+                    SharedPreferences sharedPreferences = getSharedPreferences("permission", Context.MODE_PRIVATE);
+                    SharedPreferences.Editor editor = sharedPreferences.edit();
+                    editor.putBoolean("show", false);
+                    editor.commit();
+                    next();
                 } else {
                     next();
                 }

--
Gitblit v1.8.0