集成友盟分享SDK在gargetSDK>28上无法唤起Facebook客户端问题解决方案

此类问题应该做排除法:

1:升级最新版SDK尝试!

2:xml/file_paths中尝试开放目录

<!--内置SD卡 Environment.getExternalStorageDirectory() .表示共享所有的目录,也可以指定共享的目录-->
<external-path
name="external-path"
path="."/>
<!--内置SD卡 Context.getExternalCacheDir() .表示共享所有的目录,也可以指定共享的目录-->
<external-cache-path
name="external-cache-path"
path="."/>
<!--内置SD卡 Context.getExternalFilesDir(null) .表示共享所有的目录,也可以指定共享的目录-->
<external-files-path
name="external-files-path"
path="."/>
<!--data目录下 Context.getFilesDir() .表示共享所有的目录,也可以指定共享的目录-->
<files-path
name="files_path"
path="."/>
<!--data缓存目录 Context.getCacheDir() .表示共享所有的目录,也可以指定共享的目录-->
<cache-path
name="cache-path"
path="."/>
<!--这个标签Android官方文档中是没有提及,Android设备的根目录,该目录下包含着手机内部存储器,外置SD卡等所有文件的目录-->
<root-path
name="name"
path="."/>

3: Android版本迭代变化
在29版本后,只能操作本身内部存储私有目录、外部存储私有目录、共享存储,但是依然可以通过android:requestLegacyExternalStorage="true"来设置(在AndroidManifest.xml中的application添加该配置),不启用分区存储,一切照旧。
但是30版本以后,就强制性的只能操作规定的目录,这个时候依然有个兼容配置设置,android:preserveLegacyExternalStorage="true"(在AndroidManifest.xml中的application添加该配置),这个配置使得手机appSdk30版本以下,更新appSdk30版本以后,依然不启用分区存储,一切照旧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先需要在官网注册并创建应用,然后在应用管理中获取 Appkey 和 AppSecret。接下来按照以下步骤进行集成: 1. 在项目的 build.gradle 文件中添加以下依赖: ``` implementation 'com.umeng.umsdk:push:latest.integration' ``` 2. 在 AndroidManifest.xml 文件中添加以下权限和配置信息: ```xml <!-- 权限 --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 友盟推送服务 --> <service android:name="com.umeng.message.UmengMessageService" /> <service android:name="com.umeng.message.UmengNotifyClickService" /> <receiver android:name="com.umeng.message.NotificationProxyBroadcastReceiver" /> <meta-data android:name="com.umeng.message.appkey" android:value="YOUR_APP_KEY" /> <meta-data android:name="com.umeng.message.channel" android:value="YOUR_CHANNEL_ID" /> ``` 其中,YOUR_APP_KEY 和 YOUR_CHANNEL_ID 需要替换为在官网获取的 Appkey 和渠道号。 3. 在代码中初始化 SDK: ```java // 初始化友盟推送 sdk PushAgent pushAgent = PushAgent.getInstance(this); // 启用推送服务 pushAgent.enable(); ``` 注意,这里的 this 是上下文对象,需要在 Activity 或 Application 中调用。 以上就是在 UnionApp 中集成友盟消息推送 SDK 的步骤,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值