1

UIApplication クラス メソッドにアクセスしようとしていたため、アプリ拡張機能で AFNetworking ライブラリを使用できません。UIApplication クラスにアクセスしない、他の優れたネットワーク ライブラリをここで知っている人はいますか? 提案してください。

4

2 に答える 2

3

iOS 8 拡張機能のサポートされていない機能に関する Guardからの引用#2589

この問題を修正するには、Pods-hitta.se WatchKit Extension-AFNetworking ターゲットのプリプロセッサ マクロとして AF_APP_EXTENSIONS=1 を配置する必要がありました。#define AF_APP_EXTENSIONS をプレフィックス ヘッダーに追加しても機能せず、ウォッチ拡張ターゲットにプリプロセッサ マクロとして追加しても機能しませんでした。

Project Navigator で Pods プロジェクトをクリックし、Pods-{your-app-name-extension}-AFNetworking を選択します。次にビルド設定に移動し、「AF_APP_EXTENSIONS=1」で新しい行を追加するプリプロセッサ マクロを見つけます。

また、最初に+#if !defined(AF_APP_EXTENSIONS)でラップします。そして終了+#endif

ラッピングの完全な例:

- (void)updateNetworkActivityIndicatorVisibility {
+#if !defined(AF_APP_EXTENSIONS)
     [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:[self isNetworkActivityIndicatorVisible]];
+#endif
}
于 2015-05-20T11:51:48.443 に答える
-2

AFNetworking を拡張機能で使用できます。以下の指示に従うだけです。

アプリ拡張機能で AFNetworking を使用する場合は、AF_APP_EXTENSIONS を #define して、使用できない API を使用しないようにします。

https://github.com/AFNetworking/AFNetworking/issues/2119

于 2014-09-29T09:44:28.303 に答える