android9.0系統適配遇到的問題

 

1、apk在9.0如下的系統上安裝運行,沒有問題。可是在9.0系統上運行會彈出一個框android

  解決辦法:web

private void closeAndroidPDialog() {
        try {
            Class aClass = Class.forName("android.content.pm.PackageParser$Package");
            Constructor declaredConstructor = aClass.getDeclaredConstructor(String.class);
            declaredConstructor.setAccessible(true);
        } catch (Exception e) {
            e.printStackTrace();
        }
        try {
            Class cls = Class.forName("android.app.ActivityThread");
            Method declaredMethod = cls.getDeclaredMethod("currentActivityThread");
            declaredMethod.setAccessible(true);
            Object activityThread = declaredMethod.invoke(null);
            Field mHiddenApiWarningShown = cls.getDeclaredField("mHiddenApiWarningShown");
            mHiddenApiWarningShown.setAccessible(true);
            mHiddenApiWarningShown.setBoolean(activityThread, true);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

  

2、9.0系統apk自動更新,下載下來apk後沒法自動安裝,安裝界面一閃而逝app

  解決辦法:在AndroidManifest.xml加入權限,並在程序運行的時候動態申請位置來源權限xml

   <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>blog

3、9.0系統webview加載問題webview

解決方法:在AndroidManifest.xml文件中的Application標籤添加android:usesCleartextTraffic="true"。get

4、須要在AndroidManifest.xml中加入如下普通權限,否則在9.0系統中通知無法顯示或者直接報錯。it

<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
相關文章
相關標籤/搜索