問題タブ [bftask]
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.
objective-c - [PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:launchOptions] (semaphore_wait_slow トラップ) を使用して Facebook 4.0.x 以降のログイン ハングを解析する
Facebook を v4.0.x および最新の Parse ライブラリに更新してから、ユーザーがログインしようとすると、アプリがハングします。
私のスタック トレースは次のようになります。
私は以前に非常によく似た問題を抱えていました。ここで答えました: [PFFacebookUtils initializeFacebook] - semaphore_wait_trap
ただし、そのソリューションは機能しなくなりまし[PFUser currentUser]
た。[PFUser(Private) _getCurrentUserWithOptions:]
[BFTask(Private) waitForResult:withMainThreadWarning:]
私のアプリでは、PFUser を MPLUser というクラスにサブクラス化し、ユーザー メソッドをオーバーライドしました。これが問題と関係があるかどうかわかりませんか?
これが発生し始めると、アプリを起動できなくなります。ただし、通常、ロックが発生し始める前にアプリを数回起動することができます。それは通常、クラッシュした後に発生します...
私はポッド「ParseFacebookUtilsV4」を使用しており、すべてのライブラリを最新バージョンに更新しています。
アップデート:
ログオンしようとしているように見える別のスレッドからのスタック トレースを次に示します。
Parse と Facebook を次の順序で初期化します。呼び出しを逆にすると、クラッシュします。
parse-platform - [BFTask isFaulted]: 認識できないセレクターがインスタンス エラーに送信されました
Bolts 1.1.4 で Parse SDK 1.7.1 に更新し、新しい最新の Facebook SDK を使用します。ユーザーにログインするたびに、次のエラーが表示されます。
[BFTask isFaulted]: 認識できないセレクターがインスタンス エラーに送信されました。
ユーザーにログインできます。ユーザーの情報は解析されますが、この例外を解決する方法がわかりません。
他にこの問題を抱えている人はいますか?
ios - Bolts Framework (BFTask) でキャンセル可能なタスクを実装する
BFTask
は私にとっては良かったのですが、1 つ不満がcancel
あります。タスクをどのように行うべきかを示す実際の例をまだ見たことがありません。この件に関するドキュメント全体は、彼らの GitHub ページにあり、私が気にかけている部分以外のすべてを含む単一の低レベルのセクションがあります:タスクをキャンセルする方法.
彼らのコード スニペットの後には、次のものが続きます。
注: キャンセル トークンの実装は、スレッドセーフである必要があります。
私は次のことを疑問に思っています:
- インターフェイス自体で
cancel
メソッドを提供していない可能性がある正当な理由はありますか?BFTask
タスクがキャンセルされたかどうかを表すプロパティがありますが、キャンセルする手段はありません。 - それ自体に
cancellationToken(s)
プロパティを含めない正当な理由はありますか?BFTask
- の実装は
cancel
、タスク自体に強く結合されていますか? または、の場合のように一般的な実装は可能cancelAllOperations
ですNSOperationQueue
か?
swift - Bolts フレームワークの continueWithBlock エラー
私はしばらくの間 AWS s3 を使用してきましたが、最近までほとんど問題がありませんでした。ココアポッドを介してフレームワークをインポートします。最近、この投稿に照らしてココアポッドを再インストールしました。
その後、宣言されていない型の使用が 100 万 1 回ありました。そのほとんどはプリミティブ型でした。最終的には、(ほとんどの場合) cocoapod をアンインストールし、cocoapod を再インストールし、削除、クリーニングしてから、特定のプロジェクトの Pod を再インストールすることで、これを解決しました (プロジェクトのクリーンアップも多数あります)。
Bolts が含まれていないという問題がありました (AWSCore の一部だと思いますが)。pod Bolts
Podfile に追加し#import <Bolts/Bolts.h>
、obj-C -> Swift ブリッジ ファイルに追加しました。
これで、Bolts は認識されましたが、次のコードで「((BFTask!) -> _)」型の引数リストで「'continueWithBlock' を呼び出すことができません」というエラーが表示されます。
bridge.h:
最後に、私のPodfile:
(私が問題を見て)Xcode/SwiftにBolts/BFTaskを再び正しく認識させる方法についてのアイデアはありますか?
objective-c - 型引数は、PFAnalytics および PFObject のパラメーター化されていないクラス BFTask に適用できません
プロジェクトを iOS 9、podfile、および必要なすべてのファイルに更新しましたが、ビルドされません。私の悲しみの原因は、次のエラー メッセージにあります。
Type arguments cannot be applied to non-parameterized class 'BFTask'
これは表示される唯一のエラーですが、両方PFAnalytics.h
で複数回表示され、おそらくもっと重要なことPFObject.h
です。
誰かがこれが何を意味するのか教えて、解決策を提案してもらえますか? 十分な情報を提供できたと思いますが、そうでない場合はお知らせください。
コード サンプルは次PFObject.h
のPFAnalytics.h
とおりです。
エラーがスローされます。これは私のコードではなく、前PFObject.h
にPFAnalytics.h
述べたとおりです。エラーをスローする関数の例をPFObject.h
以下に示します
一時停止標識をクリックすると、提案は PF_GENERIC(NSNumber *) を削除することであり、このようなメソッドになります
しかし、それはもっと面倒になるだけなので役に立ちません
更新 02: my の内容Podfile
:
ios - 解析: すべての saveEventually タスクを取得する方法
iOS アプリで Parse を使用しています。私のアプリではsaveEventually()
、インターネット接続を利用できる必要なく、Parse にデータを保存するために多くの関数を使用しています。saveEventually()
私はそれがオブジェクトを返すことを知っていBFTask
ます。任意の時点でのステータスを確認するために、作成されたすべてのタスクを取得することは可能ですか? また、アプリの再起動後に同じ手法を使用できますか? ありがとう!
objective-c - バックグラウンドで SpriteKit オブジェクトを描画する BFTask がメイン スレッドをロックしている
バックグラウンドで SpriteKit 描画を実行するために BFTasks を使用していますが、描画がメイン スレッドをロックしているため、それらを正しく使用しているかどうかはわかりません。
各オブジェクトは複数の SKSpriteNode で構成され、レンダリング前にフラット化されます。フラット化されるとすぐに、つまり呼び出したときにそれぞれをレンダリングしたいと思います[self addChild:miniNode];
が、すべてが作成されるまで待機し (メインスレッドをロック)、一度に表示されます。
一連のタスクを示すために、以下のコードを簡略化しました。
MiniRows クラス:
行クラス:
バックグラウンド スレッドで addMiniTask メソッドを実行してみましたが、違いはないようです。BFTask の概念を誤解しているのではないかと思います。バックグラウンド スレッドで自動的に実行されると思いましたが、そうではないのでしょうか。
xcode - Facebook Unity SDK 7.6.0 が Bolts BFTask.h クラスを認識しない
まず、Unity 5.4.3.p4 と XCode 6.4 を使用して iOS 用のゲームをビルドしています。最近、Facebook SDK を 6.2.2 から 7.6.0 に更新しました。これは、後者が実際には Unity 5.xx 用に構築されておらず、ログインに失敗することがあるからです。FB SDK を更新したため、ゲームが XCode 用にコンパイルされません。ドキュメントで読んでいない互換性はありますか? 私はこの問題にほぼ3日間立ち往生しています。
ありがとう!
swift - saveInBackgroundWithBlock 追加タスクの解析
私がやりたいことは、アプリで saveInBackgroundWithBlock が呼び出されるたびに別の保存を引き起こすことです。私はこれを行って、変更されたすべてのものと誰が変更したかの「ログ」を作成します。私は PFObject.h を調べましたが、これを Obj-C で適切に記述する方法や、すべてのインスタンスに追加する以外にどこで/どのようにこれを行うことができるかわかりません。これは良い方法ですか?それとも、それを突き出して、より難しい方法で使用する必要がありますか?