FacebookActivity没有在Api 23+上调用finish()

时间:2015-10-17 10:08:43

标签: android android-lifecycle facebook-sdk-4.0 android-6.0-marshmallow

我在我的应用中使用facebook sdk。为了在点击facebook按钮时不显示独奏进度条,我正在使用:

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

但是,我认为对于api 23+的设备会导致崩溃:

“com.facebook.FacebookActivity在onResume()完成之前没有调用finish()

有人在这里说:Activity did not call finish? (API 23)写作:

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

在有问题的活动中,他们解决了这个问题。但由于我无法编辑FacebookActivity,还有其他解决方案吗?

3 个答案:

答案 0 :(得分:10)

Facebook已经更改了他们的instructions,用于初步设置项目。只需将com.facebook.FacebookActivity的主题更改为Failed to execute goal org.codehaus.enunciate:maven-enunciate-plugin:1.25:assemble (default) on project VCWH_Core_QueryService: Problem assembling the enunciate app. com.sun.tools.apt.mirror.type.ClassTypeImpl cannot be cast to com.sun.mirror.type.AnnotationType -> [Help 1]

答案 1 :(得分:0)

请参阅windowNoDisplay的javadoc:

  

(...)您的活动必须立即退出而无需等待用户互动(...)

因此异常是正确的,您的用例与windowNoDisplay不匹配。

答案 2 :(得分:0)

这是平台错误。

  

如果您在一个或多个活动中使用Theme.NoDisplay   我推荐你的应用程序,你还没有在Android 6.0上测试它们   你很快就会这样做Android 6.0中的未记录的回归将   导致其中一些活动在发布时崩溃,如果你的   targetSdkVersion为23或更高。

请参阅此博文:https://commonsware.com/blog/2015/11/02/psa-android-6p0-theme.nodisplay-regression.html