weizhengliang преди 2 години
родител
ревизия
007c72cba0

+ 2 - 0
home/src/main/AndroidManifest.xml

@@ -18,6 +18,8 @@
     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <!-- 悬浮窗显示 -->
+    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+    <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.WAKE_LOCK" />
     <uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT"/>

+ 8 - 0
home/src/main/code/com/wdkl/ncs/android/component/home/activity/HomeActivity.kt

@@ -9,6 +9,7 @@ import android.content.pm.PackageManager
 import android.graphics.Color
 import android.media.AudioManager
 import android.net.ConnectivityManager
+import android.net.Uri
 import android.os.Build
 import android.os.Bundle
 import android.os.CountDownTimer
@@ -246,6 +247,13 @@ class HomeActivity : BaseActivity<HomeActivityPresenter, ActivityHomeBinding>(),
     }
 
     private fun permissionGranted() {
+        if (Build.VERSION.SDK_INT >= 23) {
+            if (!Settings.canDrawOverlays(this)) {
+                val intent = Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:$packageName"))
+                startActivityForResult(intent, 10)
+            }
+        }
+
         if ("KT10-3F".equals(Build.MODEL, true) || "KT10-2F".equals(Build.MODEL, true) || "KT8001-2F".equals(Build.MODEL, true)) {
             Constants.imei = NetHelper.getInstance().macAddress
         } else {

+ 1 - 1
home/src/main/code/com/wdkl/ncs/android/component/home/util/AppUtils.java

@@ -22,7 +22,7 @@ public class AppUtils {
             Log.i("AppUtil", "restartApp ======================");
             //重新启动app
             Intent mStartActivity = new Intent(BaseApplication.appContext, HomeActivity.class);
-            mStartActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
+            mStartActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
             int mPendingIntentId = 123456;
             PendingIntent mPendingIntent = PendingIntent.getActivity(BaseApplication.appContext, mPendingIntentId, mStartActivity, PendingIntent.FLAG_CANCEL_CURRENT);
             AlarmManager mgr = (AlarmManager) BaseApplication.appContext.getSystemService(Context.ALARM_SERVICE);

+ 2 - 2
home/src/main/res/layout/activity_register.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<layout>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<layout xmlns:android="http://schemas.android.com/apk/res/android">
+<LinearLayout
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:padding="10dp"