android 9.0适配

限制访问通话记录

Android 9 引入 CALL_LOG 权限组并将 READ_CALL_LOGWRITE_CALL_LOGPROCESS_OUTGOING_CALLS 权限移入该组。 在之前的 Android 版本中,这些权限位于 PHONE 权限组。

如果应用需要访问通话记录或者需要处理去电,则您必须向 CALL_LOG 权限组明确请求这些权限。 否则会发生 <mark>SecurityException</mark>。

限制访问电话号码

在未首先获得 READ_CALL_LOG 权限的情况下,除了应用的用例需要的其他权限之外,运行于 Android 9 上的应用无法读取电话号码或手机状态。

与来电和去电关联的电话号码可在手机状态广播(比如来电和去电的手机状态广播)中看到,并可通过 PhoneStateListener 类访问。 但是,如果没有 READ_CALL_LOG 权限,则 PHONE_STATE_CHANGED 广播和 PhoneStateListener <mark>提供的电话号码字段为空</mark>。

要从手机状态中读取电话号码,请根据您的用例更新应用以请求必要的权限:

  • 要通过 PHONE_STATE Intent 操作读取电话号码,同时需要 READ_CALL_LOG 权限 READ_PHONE_STATE 权限
  • 要从 onCallStateChanged() 中读取电话号码,只需要 READ_CALL_LOG 权限。 不需要 READ_PHONE_STATE 权限

限制了明文流量的网络(HTTP)请求,非加密的流量请求都会被系统禁止掉,要求使用HTTPS

解决方案:

  1:在 res 下新建一个 xml 目录,然后创建一个名为:network_security_config.xml 文件 ,该文件内容如下:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>

然后在 AndroidManifest.xml application 标签内应用上面的xml配置:

        android:name=".App"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:networkSecurityConfig="@xml/network_security_config"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:theme="@style/AppTheme"></application>

2.服务器和本地应用都改用 https (推荐)

3.targetSdkVersion 降级回到 27

发布了13 篇原创文章 · 获赞 7 · 访问量 9470
展开阅读全文

Android 9.0网络适配。一加5T9.0系统闪退,其他9.0并没有。

03-06

这个项目是公司的一个很老的项目 用eclipse写的,我按照9.0适配守则进行了适配发现部门手机还存在闪退,当我关闭网络的时候就不闪退了。 下面是报错的日志方便大佬们检查我把图片和文字复制了 03-06 15:17:52.097 16529-16914/net.beijing.qixiaomi.agent E/.qixiaomi.agen: Maybe bug 77342775, looking for Lorg/apache/http/HttpResponse; 0x16663768[continuous;main space (region space)] defined in /system/framework/org.apache.http.legacy.boot.jar/0xe4023c00 with loader: dalvik.system.PathClassLoader/0xe4020110[hit:continuous;main space (region space)](/system/framework/org.apache.http.legacy.boot.jar/0xe4023c00:/data/app/net.beijing.qixiaomi.agent-fJVmZaTt3mjrvEuRZuFmTQ==/base.apk/0xdc27aba0);dalvik.system.DexClassLoader/0xe347dd00(/data/user/0/net.beijing.qixiaomi.agent/app_push_lib/plugin-deploy.jar/0xe4023650:/system/framework/org.apache.http.legacy.boot.jar/0xe40244c0);java.lang.BootClassLoader/0xe401ec70 in interface table for Lorg/apache/http/message/BasicHttpResponse; 0x16f4f698[continuous;main space (region space)] defined in /system/framework/org.apache.http.legacy.boot.jar/0xe40244c0 ifcount=2 with loader dalvik.system.DexClassLoader/0xe347dd00[hit:continuous;main space (region space)](/data/user/0/net.beijing.qixiaomi.agent/app_push_lib/plugin-deploy.jar/0xe4023650:/system/framework/org.apache.http.legacy.boot.jar/0xe40244c0);java.lang.BootClassLoader/0xe401ec70 iface #0: org.apache.http.HttpMessage iface #1: org.apache.http.HttpResponse descriptor match in dalvik.system.DexClassLoader/0xe347dd00[hit:continuous;main space (region space)](/data/user/0/net.beijing.qixiaomi.agent/app_push_lib/plugin-deploy.jar/0xe4023650:/system/framework/org.apache.http.legacy.boot.jar/0xe40244c0);java.lang.BootClassLoader/0xe401ec70 match? false![图片说明](https://img-ask.csdn.net/upload/201903/06/1551866020_918052.png) 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览