我意识到有很多与这个标题相似的问题,但我认为我的问题是一个尚未解决的问题。
我有一个现有的 Android 应用程序正在进入密集的 beta 测试阶段。为此,我正在尝试实施 Instabug 来提供帮助。
今天早上,在尝试实施 Instabug 之前,我的应用程序工作了(因为它启动了)。
我的MainActivity
extends android.app.Activity
,所以我用InstabugActivity
( com.instabug.wrapper.support.activity.InstabugActivity
) 替换了它。
MyMainActivity
用于登录/注册,然后应用程序转换AppRootActivity
为android.support.v7.app.ActionBarActivity
. 这是因为该应用程序有一个导航抽屉。所以,我改为AppRootActivity
(InstabugActionBarActivity
)com.instabug.wrapper.support.activity.InstabugActionBarActivity
。
当我使用连接的设备在调试模式下运行应用程序时,它工作得很好。当我通过 Fabric/Crashlytics 将应用程序推送给我的测试人员时,应用程序在启动时崩溃。
据我所知,这些是我收到的重要错误消息:
java.lang.RuntimeException:
Unable to start activity ComponentInfo{com.company.app/com.company.app.MainActivity}:
android.view.InflateException: Binary XML file line #14:
Error inflating class fragment
Caused by:
android.view.InflateException: Binary XML file line #14:
Error inflating class fragment
at com.company.app.MainActivity.onCreate(Unknown Source)
Caused by:
android.app.Fragment$InstantiationException:
Trying to instantiate a class
com.company.app.NavigationDrawerFragment
that is not a Fragment
at com.company.app.MainActivity.onCreate(Unknown Source)
Caused by: java.lang.ClassCastException
at com.company.app.MainActivity.onCreate(Unknown Source)
好的,现在这是奇怪的事情。MainActivity
永远不会绑定到NavigationDrawerFragment
. 绝不。
我不知道为什么应用NavigationDrawerFragment
程序在启动时尝试实例化。
尽管如此,NavigationDrawerFragment
extends MyFragment
which extends Fragment
( android.support.v4.app.Fragment
)。
我真的,真的迷失在这里。我很想使用 Instabug,因为他们在 iOS 上的产品非常好而且令人印象深刻,但我想不通!
编辑
下面是 XML 布局ActivityMain
:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/main_activity_background"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical"
>
<View
android:layout_height="0dp"
android:layout_weight="1"
android:layout_width="match_parent"
/>
<ImageView
android:gravity="center"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:src="@drawable/main_activity_logo"
/>
<View
android:layout_height="0dp"
android:layout_weight="1"
android:layout_width="match_parent"
/>
<TextView
android:id="@+id/main_activity_tag_line_text_view"
android:gravity="center"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:text="@string/tag_line"
android:textColor="@color/off_white"
android:textSize="20dp"
/>
<ImageButton
android:id="@+id/main_activity_sign_up_with_Facebook_button"
android:background="@drawable/main_activity_facebook_button_shape"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/main_activity_vertical_button_margin"
android:layout_marginTop="@dimen/main_activity_vertical_button_margin"
android:layout_width="wrap_content"
android:paddingBottom="@dimen/main_activity_facebook_sign_up_button_vertical_padding"
android:paddingLeft="@dimen/main_activity_facebook_sign_up_button_horizontal_padding"
android:paddingRight="@dimen/main_activity_facebook_sign_up_button_horizontal_padding"
android:paddingTop="@dimen/main_activity_facebook_sign_up_button_vertical_padding"
android:src="@drawable/main_activity_facebook_sign_up"
/>
<Button
android:id="@+id/main_activity_sign_up_button"
android:background="@drawable/sign_up_button_shape"
android:gravity="center"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/main_activity_vertical_button_margin"
android:layout_marginTop="@dimen/main_activity_vertical_button_margin"
android:layout_width="wrap_content"
android:text="@string/sign_up_title"
android:textColor="@color/dark_gray"
android:textSize="@dimen/login_button_text_size"
/>
<Button
android:id="@+id/main_activity_login_button"
android:background="@drawable/main_activity_login_button_shape"
android:gravity="center"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/main_activity_vertical_button_margin"
android:layout_marginTop="@dimen/main_activity_vertical_button_margin"
android:layout_width="wrap_content"
android:text="@string/login_title"
android:textColor="@color/gold"
android:textSize="@dimen/login_button_text_size"
/>
<TextView
android:id="@+id/main_activity_disclaimer_text_view"
android:gravity="center"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp"
android:layout_width="wrap_content"
android:text="@string/disclaimer"
android:textColor="@color/off_white"
android:textSize="12dp"
/>
</LinearLayout>