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 |  190 +++++++++++++++++++++++++++++++----------------
 1 files changed, 125 insertions(+), 65 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 eb02d00..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
@@ -5,6 +5,7 @@
 import android.app.Activity;
 import android.app.ActivityManager;
 import android.content.Context;
+import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.SharedPreferences;
 import android.content.pm.PackageInfo;
@@ -31,14 +32,16 @@
 import com.alibaba.baichuan.android.trade.callback.AlibcTradeInitCallback;
 import com.alibaba.baichuan.trade.biz.core.taoke.AlibcTaokeParams;
 import com.google.gson.Gson;
-import com.huawei.android.hms.agent.HMSAgent;
-import com.huawei.android.hms.agent.common.handler.ConnectHandler;
 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;
 import com.umeng.analytics.MobclickAgent;
 import com.wpc.library.okhttp.OkHttpUtils;
@@ -71,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,
@@ -120,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) {
+                    }
                 }
             }
         }
@@ -158,31 +160,91 @@
             e.printStackTrace();
         }
 
-
-        if (!AlibcTradeSDK.initState.isInitialized() && !AlibcTradeSDK.initState.isInitializing())
-            taobaoInit();
-
         mPermissionsChecker = new PermissionsChecker(this);
         iv_splash = findViewById(R.id.iv_splash);
 
-        /**
-         * SDK杩炴帴HMS
-         */
-        if (MobileUtil.getDeviceBrand().equalsIgnoreCase("HUAWEI")
-                || MobileUtil.getDeviceBrand().equalsIgnoreCase("HONOR")) {
-            HMSAgent.connect(this, new ConnectHandler() {
-                @Override
-                public void onConnect(int rst) {
-//                Toast.makeText(SplashActivity.this, "HMS connect end:" + rst, Toast.LENGTH_LONG).show();
-                    Log.e("mResult", "HMS connect end:" + rst);
-//                getToken();
-                }
-            });
+        if (UserUtil.isAgreeUserProtocol(this)) {
+            nextStep();
+        } else {
+            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();
+        }
+    }
+
+
+    /**
+     * 鏄剧ず鐢ㄦ埛鍗忚涓庡脊绐�
+     */
+    private void showUserProtocolAndGuide(String protocol) {
+
+        final UserProtocolDialog.Builder dialogBuilder = new UserProtocolDialog.Builder(this).setData(protocol).setNegativeButton(null, new DialogInterface.OnClickListener() {
+            @Override
+            public void onClick(DialogInterface dialog, int which) {
+                finish();
+            }
+        }).setPositiveButton(null, new DialogInterface.OnClickListener() {
+            @Override
+            public void onClick(DialogInterface dialog, int which) {
+                UserUtil.agreeUserProtocol(getApplicationContext());
+                dialog.dismiss();
+                //灞曠ず寮规
+                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 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();
         setGoodsIndex();
         getHomeNavbar();
+        jumpActivitry();//璺宠浆涓婚〉
     }
+
 
     private void initView() {
         ll_ad = findViewById(R.id.ll_ad);
@@ -269,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();
+                }
+            }
         }
     }
 
@@ -334,7 +399,6 @@
 //            isHomeJump = false;
 //            startPermissionsActivity();
 //        } else {
-            jumpActivitry();//璺宠浆涓婚〉
 //        }
 
         if (canJump) {
@@ -390,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
@@ -463,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
@@ -593,8 +654,7 @@
 
     @Override
     public void onADClicked() {
-        Log.i("AD_DEMO", "SplashADClicked clickUrl: "
-                + (splashAD.getExt() != null ? splashAD.getExt().get("clickUrl") : ""));
+
     }
 
     /**

--
Gitblit v1.8.0