デバイス (またはおそらくドロップボックス、またはドライブ) 上の複数の .json ファイルからデータを読み取るアプリを開発しています。
ユーザーは ACTION_GET_CONTENT インテントを使用してこれらのファイルを選択します。このインテントは、選択したファイルの URI を返します。そこからパスを取得し、バックグラウンドでロードするために AsyncTask に送信します。
Android 4.4 より前では、これは正常に機能していました。現在、特定のコンテンツ チューザー (特に Android 独自の「ダウンロード」アクティビティ) は、実際のファイル名やパスを含まない URI を返します。
残念ながら、AsyncTask では doInBackground(String... filenames) をオーバーライドする必要があります。これは、一連の文字列をファイル名として受け取ります。おそらくURIを何らかの方法でシリアル化し、それらをファイル名パラメーターでメソッドに渡すことができましたが、今では明らかに意図していなかったと考えています。
したがって、質問をするよう促されています。これを行うためのより良い方法はありますか?
ユーザーがキットカットで一連のファイルを選択してロードできるようにする正しい方法は何ですか?