問題タブ [nsprogress]
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.
swift - Swift で AFNetworking を使用して進行中の uploadTask
AFNetworkingでNSProgressを使用しようとしています。これは私が使用しているコードです
ファイルは正しくアップロードされますが、そうではありません。進行状況の値が 1 回だけ出力され ("progress: 0.0")、AFURLSessionManager.m 内の EXC_BAD_ACCESS で終了します。
私は何を間違っていますか?「var progress: NSProgress?」を設定する必要がありますか? 違うか、私が見逃している何かがありますか?
ios - NSProgress が totalUnitCount と completedUnitCount を更新しない
のインスタンスを介して、サーバーからリクエスタに息子ファイルのダウンロードを報告しようとしていますNSProgress
。ただし、 と の値を設定するtotalUnitCount
とcompletedUnitCount
、これらは単にNSProgress
オブジェクトで更新されません。
これは、最初に進行状況オブジェクトを作成する方法です。
次に、この進行状況オブジェクトのインスタンスをダウンロード マネージャーに保持し、ダウンロードをトリガーした呼び出し元にも渡します。
ここで、サーバーの応答を受信したら、次の方法で更新します。
次に、サーバーからデータのチャンクを取得するたびに、進行状況を更新します。
これが機能するかどうかを確認するために、fractionCompleted
プロパティに KVO を追加しました。このオブザーバーは、プロパティを更新するたびに起動completedUnitCount
しますが、progress オブジェクトの値をチェックインしても何も変更されていません。
これは常に出力しますloaded user: Downloading files… - = 0.0
私は現在、ここで何が起こっているのかNSProgress
見当がつかない.
事前にご協力いただきありがとうございます。
po progress
//編集: Swift ではデバッグが完全に壊れていて、デバッガーではできないという事実にもかかわらずdebugPrint()
、さまざまな場所で a を実行すると、次のような出力が得られます。
だから私は間違いなくNSProgress
どこでも同じインスタンスを使用しています!
ios - 2 つの NSProgress を並行して追跡する方法は?
それぞれいくつかのサブタスクを持つ 2 つの異なる大きなタスクがあります。各サブタスクには、NSProgress
手動で更新する子があります。NSProgress
それぞれの大きなタスクは、複数の親をホストします
さまざまな時間に呼び出します。2 つの大きなタスクの進捗レポートは、それぞれこの設定で問題なく機能します。
私の問題は、これら 2 つの大きなタスクを並行して実行したいということと、それらの進行状況を全体として追跡したいということです。これを行う方法はありますか?
2 つの大きなタスク(合計で 3 つのレベル)NSProgress
をラップするために外側のレベルでオブジェクトを作成しようとしましたが、問題は進行状況を更新するときに 2 つのタスクが「戦う」ことです。つまり、1 つのタスクが実行され、次に別のタスクが実行されて例外が発生する可能性があります (2 番目のタスクは最新ではないため)。NSProgress
NSProgress
becomeCurrentWithPendingUnitCount:
resignCurrent
NSProgress
2 つのタスクを並列ではなく順次にすると問題は解決しますが、同時に実行したいと思います。何か案は?
ios - NSProgress::completedUnitCount セッターがハングする
(void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didSendBodyData:(int64_t)bytesSent totalBytesSent:(int64_t)totalBytesSent totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend { self.progress.completedUnitCount = totalBytesSent; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^これはios 9.0にかかっています。これどうする???
(void)URLSession:(NSURLSession *)セッション タスク:(NSURLSessionTask *)タスク didSendBodyData:(int64_t)bytesSent totalBytesSent:(int64_t)totalBytesSent totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend; メインスレッドで呼び出されることは重要ではありません
(lldb) bt * thread #1: tid = 0xd6e1, 0x00000001984a0c6c libsystem_kernel.dylib semaphore_wait_trap + 8, queue = 'com.apple.main-thread', activity = 'send control actions', 1 messages, stop reason = signal SIGSTOP
* frame #0: 0x00000001984a0c6c libsystem_kernel.dylib
semaphore_wait_trap + 8 frame #1: 0x000000019857a97c libsystem_platform.dylib _os_semaphore_wait + 24
frame #2: 0x00000001007bd428 libdispatch.dylib
_dispatch_barrier_sync_f_slow + 600 frame #3: 0x00000001835af270 Foundation -[NSConcreteObservationBuffer _receiveBox:] + 248
frame #4: 0x00000001836180b0 Foundation
_NSKVO1AdaptorDeliver + 388 frame #5: 0x0000000183617ea0 Foundation _NSKVO1AdaptorSlowDeliver + 264
frame #6: 0x0000000183523b84 Foundation
-[NSKeyValueObservance observeValueForKeyPath :ofObject:change:context:] + 424 フレーム #7: 0x00000001834ffdd4 Foundation NSKeyValueNotifyObserver + 304
frame #8: 0x00000001834ff8fc Foundation
NSKeyValueDidChange + 404 フレーム #9: 0x00000001834ea114 Foundation -[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120
frame #10: 0x000000018258fab0 CoreFoundation
__53-[__NSArrayM enumerateObjectsWithOptions:usingBlock:]_block_invoke + 132 フレーム #11: 0x00000001825-[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 308
frame #12: 0x00000001836cc158 Foundation
-[NSProgress _setValueForKeys:settingBlock:] + 600 フレーム #13: 0x00000001836cc87c Foundation`-[NSProgress setCompletedUnitCount:] + 124
PS: UIProgressView::observedProgress をその NSProgress に設定しないと、正常に動作します!?
ios - UIWebView の問題を伴う AFNetworking
この方法を使用する前にAFNetworkingで作業したとき
しかし、今ではコンパイルエラーが表示されますCannot convert value of type '(_, _, _) -> Void' to expected argument type 'AutoreleasingUnsafeMutablePointer<NSProgress?>' (aka 'AutoreleasingUnsafeMutablePointer<Optional<NSProgress>>')
私が理解している限り、進捗ブロックを NSPredicate 変数に置き換える必要があります。もしそうなら、進捗状況を追跡する方法がわかりません。
何を変更する必要がありますか?
ios - 複数のファイルをダウンロードするための子の進行状況を追加する
プロジェクトで AFNetworking 3.0 を使用して複数のファイルをダウンロードしています。すべてのファイルの単一のダウンロードの進行状況を表示したい。各ファイルのダウンロードの各子の進行状況を親の進行状況に追加しました。しかし、それは機能していません。アプリがクラッシュしました。エラーが発生します-
これが私のダウンロードクラスです-
ios - NSProgress によるメモリの大幅な増加
私は NSProgress を試していますが、バックグラウンド スレッドで単純なループを見つけると、メモリが急速に増加します。
これを Allocations インストルメントでプロファイリングすると、メモリが 30 秒間で約 20 MB に増加することがわかります (ループのサイズを大きくすると、さらに増加します)。割り当てはすべて に起因し_NSProgressFraction
ます。
私が見落としている明らかな何かがありますか、それともこれは NSProgress のバグですか?
ios - GoDaddy サーバーの URL からファイルをダウンロードしようとすると、ダウンロードの進行状況が NSProgress に表示されない
goDaddy サーバーから mp3 ファイルをダウンロードして、ダウンロードプロセスを NSPorgress に表示したい。そのため、Heikowi/HWIFileDownload this demo to refrence を使用しています。
デモは、開始、停止、キャンセル、一時停止、および再開機能で正常に動作しています。しかし、このデモでは、GoDaddy サーバーから URL をダウンロードできません。
どうすればこれを解決できますか?
以下の URL を使用しています: http://starindustries.co/assets/mp3/Exotic.mp3