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"/>
相关文章
相关标签/搜索