問題タブ [nsurlsessionconfiguration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NSURLSession: cancelByProducingResumeData を呼び出した後、再開データを取得できません
ユーザーがダウンロードをキャンセルしたり、何か問題が発生したりした後に、ダウンロードを再開したい。しかし、cancelByProducingResumeData
メソッドを呼び出すresumeData
と、 nil
. そのため、ダウンロードを再開できません。私たちの PC クライアントはこのリンクのダウンロードを再開できるので、ダウンロード リンクを再開できると確信しています。これが私のコードです。これが完全なプロジェクトです。
ios - セルラー ネットワークの NSURLSessionConfiguration バックグラウンド タスクがダウンロードされない
Web からファイルをダウンロードしています。ファイルサイズが大きく、100MB に達することもあり、アプリがバックグラウンドになっている間やデバイスがロックされている間もダウンロードを続けたいと考えています。このために私は使用していますAFNetworking 3.0
[NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:myIdentifier];
私がWiFiに接続している限り、問題なく動作します。WiFi をオフにして 4G のセルラー ネットワークをオンにすると、応答が停止し、ダウンロード リクエストの結果としてデータが取得されません。私が使用する場合
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
アプリがバックグラウンドになるとダウンロードが続行されないことを除いて、すべて問題ありませんでした。
およびであるオブジェクトも確認allowsCellularAccess
しましたが、セルラー ネットワークではダウンロードが機能しません。NSURLSessionConfiguration
NSURLRequest
YES
ここに私の完全なコードがあります
file-upload - iOS で NSURLSession マルチパート フォーム データを使用してファイルをアップロードできない
- (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromFile:(NSURL *)fileURL;
マルチパートフォームデータを使用した方法で動画・画像ファイルをアップロードしようとしています。しかし、どういうわけかファイルをアップロードできず、" stream ended unexpectedly
" エラーが発生します。
要件
- ビデオ/画像ファイルをサーバーにアップロードする
- アプリはバックグラウンド アップロードをサポートする必要があります (アプリがバックグラウンドに移行した後もアップロード プロセスを続行します)
- サーバーは、データがマルチパート フォーム データを使用して送信されることを想定しています。
これを達成するために使用されるメソッド/API
NSURLSession バックグラウンド セッション API (完全なコードを以下に示します)
2.
- (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromFile:(NSURL *)fileURL
課題/直面している問題
stream ended unexpectedly
この API をアップロード プロセスに使用するたびに " " エラーが発生する
注意点
NSURLConnection
の代わりに使用している場合、アップロードは同じコードで成功していますNSURLSession
。NSURLSession
バックグラウンド アップロード プロセスは、ファイルの場所 (NSURL
) をパラメーターとして想定し、NSData を受け入れません。アップロード前にファイルを変換することNSData
はできません。つまり、ファイル本体に NSData を追加することはできません。
次の点で助けが必要
形成されているマルチパートフォームデータボディに間違いはありますか (注 - 同じコードが NSURLConnection で動作しています)
私のアプローチのどこが間違っていますか?
NSURLSession backgroundSession
アップロードをサポートするために、サーバー レベルで何か変更を加える必要がありますか? (データ解析か何かで?)ファイルのアップロードに使用されているコードは次のとおりです
NSString *BoundaryConstant = @"----------V2ymHFg03ehbqgZCaKO6jy";
ios - NSURLSessionConfiguration のデバイス設定でプロキシをオーバーライドしますか?
デバイスのネットワーク設定にあるプロキシ設定を無視し、代わりに NSURLSession を使用するときにプロキシを使用しないことは可能ですか?
基本的に、接続が失敗した場合は、プロキシを使用しないようにフォールバックしたいと考えています。
ありがとう !
ios - NSURLSession バックグラウンド転送: キューからダウンロードされた各ビデオのコールバック
を使用して複数のビデオをダウンロードするために、バックグラウンド転送サービスを使用していNSURLSession
ます。アプリがバックグラウンド モードの場合、ダウンロードは正常に機能しており、満足しています。私の問題は、キューからダウンロードされた各ビデオのコールバックが必要なことです。
ダウンロードしたビデオごとに次のメソッドが呼び出されることを期待していました。
バックグラウンド転送後にアプリに送信するメッセージがシステムにない場合は、次の方法を使用します。
ただし、すべてのダウンロードが完了すると、両方のメソッドが呼び出されます。ダウンロード用に 3 つのビデオを配置し、アプリをバックグラウンドに置きます。3 つのビデオがすべてダウンロードされた後に、両方のメソッドが呼び出されました。
これらのメソッドで私がやっていることは次のとおりです。
AppDelegate
ダウンロードViewController
各ビデオのダウンロード時にユーザーにローカル通知を表示することは可能ですか? または、バックグラウンドですべての動画のダウンロードが完了するまで待つ必要がありますか?
答えがNOの場合、私の質問は、これら 2 つの異なるコールバックの目的は何ですか? それらを互いに分離するものは何ですか?