ユーザビリティデザインと戦っています。
権限が 1 つしかないアプリケーションを考えてみましょうandroid.permission.INTERNET
。
リモート URL (サーバー側を制御できない場所) から画像をダウンロードしたいのですが、ユーザーがそのファイルをダウンロードするかどうか、どこでダウンロードするかを選択できるようにダウンロードします。
プロセス承認のためのダイアログの表示および/または最終宛先の選択。
私はこれらの解決策を検討しました:
- 使用する DownloadManager
setDestinationInExternalPublicDir
- 2 つのバグ、許可を追加したくない
WRITE_EXTERNAL_STORAGE
、ユーザーがダウンロードするかどうかを決定できない
- 2 つのバグ、許可を追加したくない
Intent.ACTION_VIEW
ブラウザの起動に 使用- スタンドアロンはユーザーに画像を表示しますが、ダウンロードを自動的に開始しません
Intent.ACTION_VIEW
カスタム プロキシ スクリプトの 使用- サーバーは私のものではありません。サーバー側のプロキシ ダウンロード強制スクリプトを提供したくありません。
- HTTP(S) を FTP に置き換え、ユーザーに決定させる
- そのサーバー上の画像は FTP 経由で利用できないため、機能しません
- ダウンロード アプリケーション (「すべてのファイルをダウンロード」、さまざまな「ファイル マネージャー」など) の互換性を提供します。
現在の権限を拡張したり、非標準のアプリに依存したりせずにこれを達成するにはどうすればよいですか?
この github の問題にリンクされています https://github.com/smarek/Simple-Dilbert/issues/1