ContentResolver.OpenAssetFileDescriptor メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
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
されることに注意してください。 これにより、このような呼び出し元は、プロバイダーが実装する組み込みのデータ変換の恩恵を受けることができます。
このページの一部は、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
されることに注意してください。 これにより、このような呼び出し元は、プロバイダーが実装する組み込みのデータ変換の恩恵を受けることができます。
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。