android微信分享,android微信分享图片大小

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

Android 微信分享遇到的问题:

通州ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

1.APP_ID是否输入正确

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

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

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

3.分享一闪而过

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

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

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

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

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

7.换设备,重新尝试

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

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。

解决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微信分享,android微信分享图片大小
标题来源:http://hbruida.cn/article/dscdcdh.html