.pictures我明明设的是多张图片,但分享出来就是只有一张。
调用系统分享的原声代码我查了下,分享图片是这样写的:
share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(myPath)) ); // Optional, just if you wanna share an image.
我不知道这个可不可以分享多张图片,但我总得试一下,问题是这行代码怎么转成njs代码呢?
- 发布:2015-03-16 13:37
- 更新:2015-03-18 16:25
- 阅读:8707
最佳回复
暂先使用Native.js实现吧。
function test_weixin_share_mul_pic(){
var Intent = plus.android.importClass('android.content.Intent');
var ComponentName = plus.android.importClass('android.content.ComponentName');
var ArrayList = plus.android.importClass('java.util.ArrayList');
var Uri = plus.android.importClass('android.net.Uri');
var Environment = plus.android.importClass('android.os.Environment');
var File = plus.android.importClass('java.io.File');
var sdcardDir = plus.android.invoke(Environment.getExternalStorageDirectory(),'getAbsolutePath');
var intent = new Intent();
var localComponentName = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI");
intent.setComponent(localComponentName);
intent.setAction("android.intent.action.SEND_MULTIPLE");
intent.setType("image/*");
var localArrayList = new ArrayList();
var pics = ['1.png','2.jpg','3.jpg','4.jpg'];
for(var i =0;i< pics.length;i++){
var filePath = sdcardDir + pics[i];
console.log('filePath=' + filePath);
localArrayList.add(Uri.fromFile(new File(filePath)));
}
intent.putParcelableArrayListExtra("android.intent.extra.STREAM", localArrayList);
var act = plus.android.runtimeMainActivity();
act.startActivity(intent);
}
弄月 (作者)
太感谢了,你简直救了我app的命!
2015-03-18 18:04
1***@qq.com
var pics = ['1.png','2.jpg','3.jpg','4.jpg'];图片是放在项目里吗
2017-02-22 13:54