次の方法で共有


ContentResolver.OpenAssetFileDescriptor メソッド

定義

オーバーロード

OpenAssetFileDescriptor(Uri, String)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

OpenAssetFileDescriptor(Uri, String, CancellationSignal)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

OpenAssetFileDescriptor(Uri, String)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

[Android.Runtime.Register("openAssetFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;", "")]
public Android.Content.Res.AssetFileDescriptor? OpenAssetFileDescriptor (Android.Net.Uri uri, string mode);
[<Android.Runtime.Register("openAssetFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;", "")>]
member this.OpenAssetFileDescriptor : Android.Net.Uri * string -> Android.Content.Res.AssetFileDescriptor

パラメーター

uri
Uri

開く目的の URI。

mode
String

ファイル モードの文字列形式。 "r"、"w"、"wt"、"wa"、"rw"、または "rwt" を指定できます。 これらの正確な実装は、プロバイダーの実装ごとに異なる場合があることに注意してください。たとえば、"w" は切り捨てられる場合と切り捨てられない場合があります。

戻り値

ファイルを指す、または null プロバイダーが最近クラッシュした場合に、新しい ParcelFileDescriptor を返します。 この記述子はユーザーが所有しており、完了したらそれを閉じる責任があります。

属性

例外

URI の下にファイルが存在しないか、モードが無効である FileNotFoundException をスローします。

注釈

生ファイル記述子を開いて、URI の下のデータにアクセスします。 これにより、指定された URI に関連付けられているプロバイダーの基になる ContentProvider#openAssetFile メソッドとやり取りして、そこに格納されているすべてのファイルを取得します。

<h5>次の URI スキームを受け入れます:</h5<>ul><li>content (#SCHEME_CONTENT)</li li<>>android.resource (#SCHEME_ANDROID_RESOURCE)</li li>><ファイル (#SCHEME_FILE)</li></ul><h5>Android.resource (#SCHEME_ANDROID_RESOURCE) Scheme</h5>

URI オブジェクトを使用して、APK ファイル内のリソースを参照できます。 Uri は、次のいずれかの形式にする必要があります。 <ul><li>android.resource://package_name/id_number<br/>package_name は、AndroidManifest.xmlに記載されているパッケージ名です。 たとえば com.example.myapp<、br/>id_number は ID の int 形式です。<br/> このフォームを構築する最も簡単な方法は、

Uri uri = Uri.parse("android.resource://com.example.myapp/" + R.raw.my_resource");

</li li><br><android.resource://package_name/type/name/>package_name は、AndroidManifest.xmlに記載されているパッケージ名です。 たとえば com.example.myapp<、br/>type はリソースの種類の文字列形式です。 たとえば、raw または drawable です。 name は、リソース名の文字列形式です。 つまり、res ディレクトリ内のファイル名が何であれ、型拡張子はありません。 このフォームを構築する最も簡単な方法は、

Uri uri = Uri.parse("android.resource://com.example.myapp/raw/my_resource");

</li></ul>

コンテンツの読み取り専用入力 (モードは "r") に対してこの関数が呼び出される場合は、代わりに MIME の種類が "*>#47;*" で呼び出 #openTypedAssetFileDescriptor されることに注意してください。 これにより、このような呼び出し元は、プロバイダーが実装する組み込みのデータ変換の恩恵を受けることができます。

の Java ドキュメントandroid.content.ContentResolver.openAssetFileDescriptor(android.net.Uri, java.lang.String)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象

OpenAssetFileDescriptor(Uri, String, CancellationSignal)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

[Android.Runtime.Register("openAssetFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor;", "")]
public Android.Content.Res.AssetFileDescriptor? OpenAssetFileDescriptor (Android.Net.Uri uri, string mode, Android.OS.CancellationSignal? cancellationSignal);
[<Android.Runtime.Register("openAssetFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/content/res/AssetFileDescriptor;", "")>]
member this.OpenAssetFileDescriptor : Android.Net.Uri * string * Android.OS.CancellationSignal -> Android.Content.Res.AssetFileDescriptor

パラメーター

uri
Uri

開く目的の URI。

mode
String

ファイル モードの文字列形式。 "r"、"w"、"wt"、"wa"、"rw"、または "rwt" を指定できます。 "w" は書き込み専用で、"wt" は書き込みおよび切り捨てであることに注意してください。 詳細については、 ParcelFileDescriptor#parseMode をご覧ください。

cancellationSignal
CancellationSignal

進行中の操作を取り消すシグナル。存在しない場合は null。 操作が取り消されると、 OperationCanceledException スローされます。

戻り値

ファイルを指す、または null プロバイダーが最近クラッシュした場合に、新しい ParcelFileDescriptor を返します。 この記述子はユーザーが所有しており、完了したらそれを閉じる責任があります。

属性

例外

URI の下にファイルが存在しないか、モードが無効である FileNotFoundException をスローします。

注釈

生ファイル記述子を開いて、URI の下のデータにアクセスします。 これにより、指定された URI に関連付けられているプロバイダーの基になる ContentProvider#openAssetFile メソッドとやり取りして、そこに格納されているすべてのファイルを取得します。

<h5>次の URI スキームを受け入れます:</h5<>ul><li>content (#SCHEME_CONTENT)</li li<>>android.resource (#SCHEME_ANDROID_RESOURCE)</li li>><ファイル (#SCHEME_FILE)</li></ul><h5>Android.resource (#SCHEME_ANDROID_RESOURCE) Scheme</h5>

URI オブジェクトを使用して、APK ファイル内のリソースを参照できます。 Uri は、次のいずれかの形式にする必要があります。 <ul><li>android.resource://package_name/id_number<br/>package_name は、AndroidManifest.xmlに記載されているパッケージ名です。 たとえば com.example.myapp<、br/>id_number は ID の int 形式です。<br/> このフォームを構築する最も簡単な方法は、

Uri uri = Uri.parse("android.resource://com.example.myapp/" + R.raw.my_resource");

</li li><br><android.resource://package_name/type/name/>package_name は、AndroidManifest.xmlに記載されているパッケージ名です。 たとえば com.example.myapp<、br/>type はリソースの種類の文字列形式です。 たとえば、raw または drawable です。 name は、リソース名の文字列形式です。 つまり、res ディレクトリ内のファイル名が何であれ、型拡張子はありません。 このフォームを構築する最も簡単な方法は、

Uri uri = Uri.parse("android.resource://com.example.myapp/raw/my_resource");

</li></ul>

コンテンツの読み取り専用入力 (モードは "r") に対してこの関数が呼び出される場合は、代わりに MIME の種類が "*>#47;*" で呼び出 #openTypedAssetFileDescriptor されることに注意してください。 これにより、このような呼び出し元は、プロバイダーが実装する組み込みのデータ変換の恩恵を受けることができます。

の Java ドキュメントandroid.content.ContentResolver.openAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.CancellationSignal)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象