之前好早的项目xxx集成友盟SDK 实现分享.登录等功能.项目中集成了QQ.微信第三方登录,但是前段时间出现QQ登录不上的问题,之后联系友盟客服,说是要升级SDK,之前用的是6.9.6精简版,所以就更换7.0.3完整版,按照文档配置,发现多一段配置
<provider
android:authorities="com.tencent.sample2.fileprovider"
android:name="android.support.v4.content.FileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths"/>
</provider>
以及自定义Application中多了一个PlatformConfig,这段配置可放到Application的静态代码块中
PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");
PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
PlatformConfig.setQQFileProvider("com.tencent.sample2.fileprovider");
本以为这样就好了,但是一运行,点击QQ登录,悲催的发现,android10系统上了黑屏,然后跳转到QQ授权页面,本以为点击授权会成功,但是自己太自以为是了,点击之后,发现登录页面销毁了,那UMAuthListener肯定是不走了,顿时自己心中像万马奔腾.........
最终自己检查自己代码,查看Umeng Demo发现AndroidManifest.xml中最不起眼的一行
<!--明确引用org.apache.http.legacy库,避免QQ官方open sdk在Android 9上报错 -->
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
于是赶紧Ctrl+C Ctrl+V,再次运行,完美解决,瞬间舒了一口气,以此记下问题
天天学Android,天天学Java,一天一天的进步...