我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

微信android分享,android11微信分享

Android集成微信分享功能采坑:分享不成功,一闪而过,无反应等情况

Android 微信分享遇到的问题:

成都创新互联公司 - 中国电信云锦天府,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,中国电信云锦天府,西南服务器托管,四川/成都大带宽,机柜大带宽租用·托管,四川老牌IDC服务商

1.APP_ID是否输入正确

2.官网申请时输入的签名和打包的签名是否一致(请用微信推荐的签名工具对比)

注:微信平台填写的签名是ce187ed67e05c2d8879bf66bbfdfc8b9

是apk的keystore的md5去掉冒号,大写换位小写字母形式

3.分享一闪而过

有可能的bug:签名错误,appid正确,但是申请的时候吧包名和签名写反了

微信缓存问题,重新安装微信多试几次

4.请用微信官方提供的签名获取工具

5.自己直接run到手机运行的apk包注意签名应该和申请时用的签名一致(即把debug的签名改为release的)

6.分享图片的缩略图太大,超过32k

7.换设备,重新尝试

8.保证所有配置没有问题的情况下,尝试重启手机即可……(我没有开玩笑)

用 微信的 android SDK 怎么分享信息 到微信

用 微信的 android SDK分享信息到微信,方法如下:

1、第一步:登录微信开放平台,必须注册了开发者账号,然后在开放平台添加用于分享信息到微信的Android应用,例如:百度知道APP

2、添加的应用必须审核通过,然后会获取一个APP_ID和一个APP_SECRET,用于在Android应用中使用

3、在微信开发平台“资源下载页面”下载对应的SDK库文件,同时可以下载一个Demo案例

4、想要成功分享信息到微信,比如在Eclipse开发完Android应用后,使用自定义的签名对APP进行签名,然后将签名字符串填写到微信开放平台审核的应用中(这一步很重要),否则频繁闪退,分享信息失败!

解决Android11上分享图片失败,微信提示需要使用FileProvider

先看下微信分享错误的提示:

看到这个错误大家第一个可能会想到FileProvider我在AndroidManifest早已配置过了,但是配置了是你可以使用FileProvider存储了应用间共享文件,但是在并不代表你使用了FileProvider,然后了解问题我们就要先了解一个概念 分区存储

Android 10之前,外部存储区的内容主要以两种形式:

在Android 10 中,Google首次引入了 分区存储 ,将公共区域划分成了不同的集合,并且在媒体文件和其他文档之间建立了清楚的分割。经过划分之后应用不可以随意访问外部存储区中的文件,而只能访问媒体文件。

Android 11 (API 级别 30) 进一步增强了平台功能,为外部存储中的应用和用户数据提供了更好的保护。

从 Android 11 开始,使用 分区存储模式 的应用即使拥有 READ_EXTERNAL_STORAGE 权限,也无法再访问外部存储中的任何其他应用的 专属目录 中的文件

受到这一限制的影响,如果你的应用通过第三方 SDK 分享文件 ( 例如分享照片给另一应用上的好友 ) 到其他应用,而这只是将自己专属目录中的文件路径传递给目标应用,目标应用将无法读取该文件。部分分享 SDK 可能没有正确处理这种情形,没有显式报错而只是静默失败 (对方用户都没有意识到这次分享),影响开发者和用户的体验。

FileProvider是Android7就提出的应用间共享文件适配方式,而目前大多数应用和SDK都具备这中方式

如果您的应用需要在 Android 11 上向其他应用分享文件,请检查您使用的第三方分享 SDK 是否支持通过 FileProvider 进行分享 (现在大部分常用的第三方分享 SDK 均已支持)。通过 FileProvider,您的应用能够允许第三方应用读取所分享的文件,而不会受到分区存储的限制

这里微信已经支持通过了FileProvider形式进行分享了,我们可以直接调用

在项目的AndroidManifest.xml添加相关配置,示例如下:

在res/xml目录(如果没有xml目录,则新建一个)下,添加文件file_provider_paths.xml,内容如下:

external-files-path表示通过 Context.getExternalFilesDir(null) 接口获取到的目录下的文件才可被共享,其他未配置的路径均不可被分享。 同样的节点可以配置多个,以支持多个不同的子目录 ,如下所示:

将路径通过FileProvider的接口转换成 content://URI 形式,示例如下:

参考文档 OpenSDK支持FileProvider方式分享文件到微信

android app怎样实现微信分享

使用微信SDK分享WXAppExtendObject数据给好友,好友点击跳转MyApp的某个页面(需要在分享时传递构造跳转Intent的参数)。

1.该类型的分享(具体请参考微信分享SDK)可以带几个参数,参数中必须附带一些构造跳转Intent的数据。

2.好友点击分享的内容,回调IWXAPIEventHandler接口的类的onReq方法,具体为

ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:这种情况才会调用,此时可以取出分享时附带在参数中的一些数据,构造一个跳转Intent,调用startActivity(intent) 来打开MyApp。

由于是项目实测,这种实现方式的截图也就不传了。

问题1:该分享方式只能分享给好友,不能分享到朋友圈。

问题2:如果好友没安装MyApp,点击微信中好友分享过来的消息后无反应,无法提醒“未安装MyApp,请下载”,因为这些逻辑要实现的话本身就是在MyApp里面写的,原本没装的话根本无法检测。

问题3:WXAppExtendObject类型的分享,数据有大小限制,

extInfo(String)限制2KB;

fileData(byte[])供第三方使用的文件二进制数据,最大10M;

filePath:(String)Local directory of the file provided for applications,本身长度最大10KB,文件大小同上,不超过10M。


新闻标题:微信android分享,android11微信分享
新闻来源:http://mswzjz.cn/article/dsdcsgi.html

其他资讯