因此有一点问题(与 - Camera Crashing due to Background Process Limit
有关我有一些用户的手机有“不要保持活动”设置或“后台进程”设置为2或类似的东西,当打开其他意图时会导致应用程序看似“崩溃”
所以我遇到类似这样的问题
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, uri);
画廊的EXTRA_OUTPUT被忽略 - 它适用于相机(在onResume之后我有我之后处理的临时图像的URI)
但是我如何为本土画廊做些什么呢?
我目前从相机拍摄照片的过程是
我想为Gallery复制同样的东西;但画廊会忽略EXTRA_OUTPUT。我一直在寻找一下。如果我不需要,我宁愿不必自己制作画廊(我想最糟糕的情况是我必须这样做;但我希望还有另一种方式)
答案 0 :(得分:0)
好像我总是最终回答我自己的问题,这次是在主线程上使用onActivityResult的关键(现在答案看起来很明显)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent)
{
Log.e("Instance", "onActivityResult called.");
super.onActivityResult(requestCode, resultCode, intent);
//we use this to go through the channels IF the app has been restarted.
if(this.activityResultCallback == null)
{
...
}
}
但是我遇到了这个问题
if(intent != null)
{
Log.e("Instance", intent.getAction()); //this crashes?
}
我确定通过Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
但结果是带有图像(我检查了调试器,它给了我完整的内容路径) - 只是没有关联的动作?
编辑:这只是由于我缺乏Android知识,我没有意识到onActivityResult被调用并在PhoneGap中被链接,但现在这一切都有意义,但仍然存在getAction()为null的问题。我很高兴终于让一切正常,但我无法弄清楚getAction是否为空。因为我回复了内容://我只是假设它为我传回了一张照片