0

iOSアプリケーションでリンクを開く必要があります(Facebookログイン用)。これを行うには、インターフェイス メソッドを定義するだけです。

- (BOOL) application: (UIApplication *) application handleOpenURL: (NSURL *) URL

およびシステムの新しいバージョンの場合

- (BOOL) application: (UIApplication *) application
             openURL: (NSURL *) url
   sourceApplication: (NSString *) sourceApplication
          annotation: (id) annotation

すべてが機能しますが、コードを AppController コード ファイルから分離する必要があります。このために、AppController のすべてのインターフェイスを継承するクラスを作成し、オブジェクトの AppController デリゲートを置き換えます。

@implementation ApplicationProxy

id <UIApplicationDelegate> origin;
...
+ (void) changeDelegate{
   ApplicationProxy* proxy = [[ApplicationProxy alloc] init];
   origin = [[UIApplication sharedApplication] delegate];
   [[UIApplication sharedApplication] setDelegate: proxy];
}
...
// replace all the functions of origin to work properly, such as
- (Void) applicationDidBecomeActive: (UIApplication *) application {
   [origin applicationDidBecomeActive: application];
}
...
@end

iOS 5 のプロジェクトではすべてが正常に機能しましたが、iOS の 6 バージョン (および XCode の 4.5 バージョン) の更新により、クラッシュが始まりました。混乱はどこにありますか?

4

0 に答える 0