以下代码大部分时间都有效:
intent = new Intent(Intent.ACTION_VIEW, Uri.parse("content://media/internal/images/media"));
startActivity(intent);
它有时会抛出以下异常(由用户的错误日志报告):
android.content.ActivityNotFoundException:找不到处理Intent的Activity { ACT = android.intent.action.VIEW dat = content:// media / internal / images / media}
堆栈追踪:
android.content.ActivityNotFoundException:找不到要处理的Activity 意图{act = android.intent.action.VIEW dat = content:// media / internal / images / media} at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1899) 在 android.app.Instrumentation.execStartActivity(Instrumentation.java:1589) 在android.app.Activity.startActivityForResult(Activity.java:4228) 在android.support.v4.app.k.startActivityForResult(SourceFile:50)at android.support.v4.app.p.startActivityForResult(SourceFile:79)at android.app.Activity.startActivityForResult(Activity.java:4187)at android.support.v4.app.p.startActivityForResult(SourceFile:859)at android.app.Activity.startActivity(Activity.java:4515)at android.app.Activity.startActivity(Activity.java:4483)
我想知道是否有些用户' Android设备没有图库。
答案 0 :(得分:1)
我想知道是否有些用户' Android设备没有图库。
任何Android设备都不需要任何支持特定Intent
结构的导出活动(ACTION_VIEW
,因为任何MIME类型与Uri
绑定,加上{{{} 1}}计划)。
除此之外,没有一个名为" Gallery"的应用程序。在大约20亿台设备和~10,000台设备型号中,可能有数百个应用程序可以发挥这种一般性作用,而设备可能没有任何此类应用程序。
在Android上打开图库的可靠方法是什么?
See CATEGORY_APP_GALLERY
,并确保处理没有匹配活动的情况。
答案 1 :(得分:0)
试试这个
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(Intent.createChooser(intent, "Select image"), reqCode);