6

私のアプリでfacebook sdkを使用しています。 Facebookのボタンがクリックされたときにソロプログレスバーを表示しないようにするためには、私が使用しています:FacebookActivityがApiでfinish()を呼び出していません23+

「com.facebook:

<activity android:name="com.facebook.FacebookActivity" 
      android:configChanges= 
       "keyboard|keyboardHidden|screenLayout|screenSize|orientation" 
      android:theme="@android:style/Theme.NoDisplay" 
</activity> 

はしかし、私は、APIを持つデバイスのためだと思う23+これはクラッシュを引き起こします。 FacebookActivityは「完成)(onResume前に)仕上げを(呼び出していませんでした

誰かがここで言った:書き込みによってActivity did not call finish? (API 23)

@Override 
protected void onStart() { 
    super.onStart(); 
    setVisible(true); 
} 

問題の活動では、彼らゾル問題に賛成した。しかしFacebookActivityを編集することはできないので、代替ソリューションはありますか?

答えて

10

Facebookが最初にプロジェクトを設定するための彼らのinstructionsを変更しました。 com.facebook.FacebookActivityのテーマを@android:style/Theme.Translucent.NoTitleBarに変更してください。

0

windowNoDisplayの参照のJavaDoc:

(...)あなたの活動はすぐに

(...)ユーザとの対話を待たずに終了する必要がありますので、例外が正しい、あなたのユースケースはありません一致しないwindowNoDisplay

0

これはプラットフォームのバグです。

あなたが あなたのアプリ内の1つ以上の活動にTheme.NoDisplayを使用している、とあなたはまだアンドロイド6.0上でそれらをテストしていない場合は、私はあなたがこんなに早く行う をお勧めします。あなたの targetSdkVersionが23以上であれば、Android 6.0の文書化されていない回帰で が起動時にクラッシュすることがあります。

このブログ記事を参照してください:https://commonsware.com/blog/2015/11/02/psa-android-6p0-theme.nodisplay-regression.html

関連する問題