のロードに失敗しましたアンドロイド暗黙の意思編集これは、デバイス上の画像編集アプリケーションを起動するための私の暗黙の意思で画像
public String getMimeType(Uri uri) {
String mimeType = null;
if (uri.getScheme().equals(ContentResolver.SCHEME_CONTENT)) {
ContentResolver cr = getContentResolver();
mimeType = cr.getType(uri);
} else {
String fileExtension = MimeTypeMap.getFileExtensionFromUrl(uri
.toString());
mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(
fileExtension.toLowerCase());
}
return mimeType;
}
いくつかのアプリのためには、ロードするとクラッシュする:
Sketch_Camera
のアプリケーションでは、目に見えないページだけが読み込まれ、アプリとのやり取りが無効になります。
アプリでは、AirBrush
はアプリを読み込みますが、このメッセージ「画像を読み込めませんでした」でクラッシュします。
鉱山が16であるため、最小sdkバージョンに関連していますか? 私はこれを9の最小sdkバージョンでもテストしましたが、結果に変更はありません。
すべてのアプリを操作するために、このインテントに追加する必要があることはありますか?
私もputExtraを試みたし、それが解決しない:
.putExtra(Intent.ACTION_EDIT, myUri);
私はデバイス上のいくつかのギャラリーのアプリをしましたし、それらのすべてが問題なくSketch_Camera
とAirBrush
を起動します。
ここには何が起こっていますか?私はこの現象に苦しんで2日後にとても混乱しています。
「myUri」の値は何ですか?実際のMIMEタイプの代わりに 'image/*'を使っているのはなぜですか(あなたの*コンテンツなので、MIMEタイプは何ですか?) – CommonsWare
myUriはイメージファイル>> 'Uri.fromFile(myFile)'からのURIで、なぜ実際のMIMEタイプの代わりに 'image/*'を使うのですか?私はスタックからコードを選んだ。今あなたのガイドに基づいて質問を編集しました。しかし、私は同じ結果を得る。 – Eftekhari
"myUriはイメージファイルのURIです" - このファイルはどこにありますか? 'Intent.FLAG_GRANT_READ_URI_PERMISSION'と' Intent.FLAG_GRANT_WRITE_URI_PERMISSION'は 'file''Uri'値に関係しないので、この場合は役に立たないでしょう。 – CommonsWare