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