2017-08-16 10 views
0

私のアプリでは、ユーザーが自分のギャラリーから写真を選択できるようにしました。アクティビティが見つかりませんでした{act = android.intent.action.PICK dat = content:// media/external/images/media}

Intent pickPictureIntent = new Intent(Intent.ACTION_PICK, 
       MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 

をそして、私はこの意図を開始する前に、私はそれを処理することができます任意のアプリがあるかどうかを確認: は、私はこのような意図を使用

if (pickPictureIntent.resolveActivity(getActivity().getPackageManager()) != null) { 
    startActivityForResult(pickPictureIntent, SELECT_PICTURE_FROM_GALLERY_REQUEST_CODE); 
} 

しかし、私の2つのユーザーが、この例外たときに、彼らを取得するには彼らのギャラリーから写真を選択してみてください:

Exception android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.PICK dat=content://media/external/images/media } 

を私の知る限り意図を処理するアクティビティがないとき、この問題が発生した知っているが、あなたが見るように、私は全く活性を有していない可能性をご確認ください私のコードの意図を扱う。これは、ドキュメントアプリを立ち上げる

Intent intent = new Intent(); 
intent.setType("image/*"); 
intent.setAction(Intent.ACTION_GET_CONTENT); 
startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE); 

答えて

1

はこれを試してみてください。

Intent getIntent = new Intent(Intent.ACTION_GET_CONTENT); 
getIntent.setType("image/*"); 


Intent pickIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
pickIntent.setType("image/*"); 

Intent chooserIntent = Intent.createChooser(getIntent, "Select Image"); 
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] {pickIntent}); 

startActivityForResult(chooserIntent, PICK_IMAGE); 
+0

このコードではActivityNotFoundExceptionがまったく発生しないのですか? – Mostafa

+0

このコードではActivityNotFoundExceptionはありません。 –

関連する問題