我正在编写移动应用程序,该应用程序允许在外部服务器上上传图像(通过共享 Activity ),但也可以从外部服务设置为壁纸图像,或者只是社交网络共享相同的图像。
在我的应用程序中,我定义了共享和选择 Activity (选择以向其他应用程序提供图片,并共享 - 以上传到外部服务)。
但是,在我自己声明“共享” Activity 后,我无法将图片共享给其他应用程序。
我有以下代码:
$('#sharePicture').click(function() {
var activity = new MozActivity({
name: "share",
data: {
type: ["image/png", "image/jpg", "image/jpeg", "image/gif", "image/bmp"],
}
});
});
我希望它显示网络 Activity 菜单,以选择应用程序来执行共享 Activity 。
不幸的是,没有发生这样的事情 - 而我得到的是“share-activity.html”页面的内容。
我猜这是因为我在我的应用程序中声明了“共享” Activity 的处理程序(这是 https://picup.it 托管平台的移动客户端)。但是,由于某种原因,我没有获得网络 Activity 菜单 - 更糟糕的是 - 从我自己的应用程序执行共享 Activity ,这形成了恶性循环。
"activities": {
"share": {
"href": "./share-activity.html",
"disposition": "inline",
"filters": {
"type": ["image/*","image/jpeg","image/png"]
},
"returnValue": false
},
"pick": {
"href": "./pick-activity.html",
"disposition": "inline",
"filters": {
"type": ["image/*","image/jpeg","image/png"]
},
"returnValue": true
}
},
如何正确定义“共享 Activity ”的句柄以及如何正确使用将共享委托(delegate)给外部应用程序?现在它们重叠了。
我已经上传了示例应用程序,它呈现了这种意外的行为:https://github.com/bluszcz/webactivity-bug-993321
最佳答案
为什么要为所有图像类型设置过滤器并在需要特定格式之后? 第一个“image/*”涵盖了所有格式。 我找到了 imgur https://github.com/soapdog/firefoxos-sample-app-image-uploader 的示例应用程序, list 与你的相同。您确定模拟器中已更新吗?
关于javascript - FirefoxOS 调用 WebActivity "share"不显示 Web Activity 菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22922318/