0

最近 helpshift を試してみましたが、例外が発生していることがわかりました。

例外は、autorotate が yes を返すと言っていますが、このメソッドをどのコードにも実装していません。私の理解では、これは NO に設定されていることを意味します。

アプリにさまざまな向きを追加すると、iPhone が横向きに配置されていない場合、自動的に横向きに設定されます。

Terminating app due to uncaught exception 'UIApplicationInvalidInterfaceOrientation', reason: 'Supported orientations has no common orientation with the application, and shouldAutorotate is returning YES' * First throw call stack: (0x36b0d3e7 0x33545963 0x36b0d307 0x37922857 0x37ac6f21 0x37964c8b 0x37a88f73 0x37912761 0x378bacef 0x378ba77d 0x378ba1bf 0x30d9f5f7 0x30d9f227 0x36ae23e7 libc++abi.dylib: 例外をスローして呼び出された終了

helpshift API だけでなく、次のフレームワークも追加する必要がありました。

  • コアグラフィックス
  • QuartzCore (すでに追加され、機能しています)
  • SystemConfiguration (既に追加され、機能しています)
  • モバイルコア サービス
  • OpenGLES
  • コアテレフォニー
  • 安全
  • 財団

helpshift が含まれていなければ、アプリは期待どおりに動作します。上記のフレームワークのいずれかが、私が戦わなければならない helpshift に関する問題を引き起こしますか? 設定が間違っている可能性はありますか?helpshift は新しい製品であるため、ヘルプはまだ十分ではありません。

4

2 に答える 2

1

Helpshift SDK でも同じ問題が発生しました。バージョン 1.3.1 では問題なく動作しましたが、1.3.4 にアップグレードするとすぐに、アプリが UIApplicationInvalidInterfaceOrientation エラーで実行を停止しました。Helpshift のアップグレード以外に変更はありません。1.3.1 にダウングレードして (アプリが再び動作する)、1.3.4 に再度アップグレードすることで確認しました (アプリが再びクラッシュします)。アプリケーション デリゲートに以下を追加することで、アプリを実行できます。

-(NSUInteger)application:(UIApplication*)application supportedInterfaceOrientationsForWindow:(UIWindow*)window{
     return UIInterfaceOrientationMaskAll;
}

使用UIInterfaceOrientationMaskPortraitするとクラッシュします。アプリを縦向きのままにしておく必要があるため、UITabBarController サブクラスに以下を追加しました。

-(BOOL)shouldAutorotate{
     return NO;
}
于 2012-12-22T22:17:56.340 に答える
1

この例外は、ルート ビュー コントローラーの -supportedInterfaceOrientations によって返された向きのセットが、Info.plist で定義されたサポートされているインターフェイスの向きと交差して、空のセットを生成することを意味します。

于 2012-12-22T03:44:28.093 に答える