ShareSDK应用权限状况
去除非必须的权限
一般权限去除
能够在module模块中的build.gradle文件中增加以下的配置去除Gradle主动加载的可选权限办法,去除之后无需增加其余配置性能能够失常应用:
permissions {
exclude "须要去除的权限1", "须要去除的权限2"
}
比方须要去除掉“android.permission.READ_PHONE_STATE”权限,则间接增加如下配置即可:
MobSDK {
appKey "Mob开发者后盾申请的AppKey"
appSecret "Mob开发者后盾申请的AppSecret"
ShareSDK {
devInfo {
...
}
}
permissions {
exclude "android.permission.READ_PHONE_STATE",
}
}
QUERY_ALL_PACKAGES权限去除阐明:
Android高版本(Android10以上)判断第三方平台是否装置须要应用QUERY_ALL_PACKAGES权限,如果没有这个权限ShareSDK分享、受权无奈应用,不过因为Google商店对QUERY_ALL_PACKAGES权限审核比拟严格,如您不心愿应用QUERY_ALL_PACKAGES权限,能够应用咱们提供exclude的形式去除QUERY_ALL_PACKAGES权限:
MobSDK {
appKey "Mob开发者后盾申请的AppKey"
appSecret "Mob开发者后盾申请的AppSecret"
ShareSDK {
devInfo {
...
}
}
permissions {
exclude "android.permission.QUERY_ALL_PACKAGESE",
}
}
须要留神的是去除QUERY_ALL_PACKAGES权限之后,须要在Manifest中通过”queries标签”手动配置一下须要应用的第三方平台包名,相似这样:
<manifest package="xxxxxx">
......
<queries>
<!--WhatsApp-->
<package android:name="com.whatsapp" />
<!--Facebook-->
<package android:name="com.facebook.katana" />
<!--Line客户端-->
<package android:name="jp.naver.line.android" />
<!--Twitter-->
<package android:name="com.twitter.android" />
<!--WeChat-->
<package android:name="com.tencent.mm" />
<!--QQ-->
<package android:name="com.tencent.mobileqq" />
<!--instagram-->
<package android:name="com.instagram.android" />
<!--FacebookMessenger-->
<package android:name="com.facebook.orca" />
<!--新浪微博-->
<package android:name="com.sina.weibo" />
......
</queries>
......
</manifest>
可进入官网文档核心理解更多操作指南
发表回复