ホームページ > Java > &#&チュートリアル > Android 6 以降で非推奨になった org.apache.http.entity.FileEntity の最良の代替案は何ですか?

Android 6 以降で非推奨になった org.apache.http.entity.FileEntity の最良の代替案は何ですか?

Mary-Kate Olsen
リリース: 2024-11-28 02:38:11
オリジナル
312 人が閲覧しました

What are the Best Alternatives to the Deprecated org.apache.http.entity.FileEntity in Android 6 and Above?

Android 6 (Marshmallow) での org.apache.http.entity.FileEntity の廃止: 総合ガイド

Android Marshmallow のリリースに伴い、由緒ある org.apache.http.entity.FileEntity クラスが廃止されました。このため、開発者はファイルのアップロードを処理するための代替手段を探しています。

非推奨の通知

ファイルのアップロードに一般的に使用されるコードの次のセクションは、Android では動作しなくなります。 6 以上:

HttpClient httpClient = new DefaultHttpClient();
File file = new File(attr.Value);
String url = server_url;
HttpPost request = new HttpPost(url);
FileEntity fileEntity = new FileEntity(file, "image/png");
request.setEntity(fileEntity);
HttpResponse response = httpClient.execute(request);
String output = getContent(response.getEntity().getContent());
ログイン後にコピー

代替解決策

FileEntity を他のメソッドに置き換えるのはより複雑になる可能性がありますが、利用可能な実行可能なオプションがいくつかあります。

HttpURLConnection

ビルドされた-in Java HttpURLConnection クラスはファイルのアップロードに使用できますが、その API はより冗長であり、コード行が増えます。 HttpURLConnection を使用する例を次に示します。

// Implement your own HTTP file upload logic here
ログイン後にコピー

Apache HttpClient for Android

Apache は、FileEntity の代替を含む Android 用の別の HttpClient ライブラリを提供します。このライブラリを使用するには追加の依存関係が必要になりますが、ファイルのアップロードを処理するための使い慣れた API が提供されます。

OkHttp

OkHttp は、HTTP ネットワーキング用の人気のあるサードパーティ ライブラリです。アンドロイド。ファイルのアップロードを簡単に処理できる、クリーンで簡潔な API が特徴です。 OkHttp の MultipartBuilder を使用した例を次に示します。

// Implement your own OkHttp file upload logic here
ログイン後にコピー

その他の考慮事項

CompileSdkVersion

compileSdkVersion を 21 に変更すると、を使用してアプリをコンパイルできるようにしますFileEntity ですが、非推奨の根本的な理由に対処することが重要です。

代替ライブラリ

上記のオプションに加えて、HTTP ネットワーキングで使用できる他のライブラリがあります。 Android では、Volley、Retrofit、AndroidAsync など。これらのライブラリは、特定の要件に応じて、さまざまな機能と利点を提供します。

以上がAndroid 6 以降で非推奨になった org.apache.http.entity.FileEntity の最良の代替案は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート