SDK版本:
implementation'com.alibaba.android:ddsharesdk:1.2.0'
API
File file = new File(path);
if (Build.VERSION.SDK_INT > 29) {
path = getFileUri(BaseApplication.getInstance(),file);
} else {
if (!file.exists()) {
return;
}
}
//初始化一个DDImageMessage
DDImageMessage imageObject = new DDImageMessage();
imageObject.mImagePath = path;
//构造一个mMediaObject对象
DDMediaMessage mediaMessage = new DDMediaMessage();
mediaMessage.mMediaObject = imageObject;
//构造一个Req
SendMessageToDD.Req req = new SendMessageToDD.Req();
req.mMediaMessage = mediaMessage;
// req.transaction = buildTransaction("image");
//调用api接口发送消息到支付宝
if(isSendDing){
iddShareApi.sendReqToDing(req);
} else {
iddShareApi.sendReq(req);
}
现象:Android 11以下可以分享成功
android 10的文件地址:
/storage/emulated/0/amarsoft/share/share_pic.jpg
失败的文件地址:
/storage/emulated/0/Android/data/com.amarsoft.irisk/files/share_pic.jpg
Android 11及以上,会跳转到钉钉选择用户的页面,点击某一个发送对象,点击发送,无响应。
在集成钉钉 Android 分享 SDK 时,若发生分享本地图片失败的问题,可能存在以下几种原因:
图片路径错误或不存在:确保你提供的图片路径是正确的,并且该图片确实存在于指定的位置。
权限问题:在 Android 上,你需要在 manifest 文件中添加读取和写入外部存储的权限。
SDK 版本过旧:如果使用的 SDK 版本太旧,可能会导致一些问题。可以尝试更新到最新版本的 SDK。
网络问题:如果你的应用程序需要访问网络才能完成分享操作,请检查网络连接是否正常。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。