我有一个Android应用程序,使用Xamarin.Android写的,但我相信这个问题在一般适用的Android。我已经安装在一些测试设备的应用程序,它是在第一次工作的罚款。然而,在某些点上的应用程序开始不断崩溃。我不知道在这种状态下如何得到,但是从该点向前,它不断发生。因为它已经安装了,所有我能做的就是使用的logcat看错误。因为它本质上重新安装应用程序和错误不会发生,我不能使用Visual Studio调试器。我一直在试图与在调试模式下的应用程序一段时间才能得到它回去在这种状态下,但我一直不成功至今。
我觉得我需要调试器来给我多一点信息,摸不着头脑。我敢肯定,基于下面的问题是底部的导航是空的错误,这就是为什么它不能设置文本。但是,我不知道底部导航如何为null,我们在此状态下怎么弄,为什么重启不能解决问题,只有重新安装呢。
下面是我在logcat中看到的错误:
这里就是我有底部导航视图,并在那里设置文本颜色axml:
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_nav"
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_gravity="start"
android:layout_alignParentBottom="true"
app:elevation="16dp"
android:background="@color/backgroundNormal"
app:itemIconTint="@color/lightText"
app:itemTextColor="@color/lightText"
app:menu="@menu/bottom_navigation" />
这是从菜单文件夹中的bottom_navigation XML:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--Update strings and icons-->
<item android:id="@+id/menu_batches"
android:title="Batches"
android:icon="@drawable/ic_action_arrow_back"
app:showAsAction="ifRoom"/>
<item android:id="@+id/menu_options"
android:title="Options"
android:icon="@drawable/ic_action_options"
app:showAsAction="ifRoom"/>
<item android:id="@+id/menu_home"
android:title="Home"
android:icon="@drawable/ic_action_home"
app:showAsAction="ifRoom"/>
<item android:id="@+id/menu_settings"
android:title="Settings"
android:icon="@drawable/ic_action_settings"
app:showAsAction="ifRoom"/>
<item android:id="@+id/menu_post"
android:title="Post"
android:icon="@drawable/ic_action_arrow_forward"
app:showAsAction="ifRoom"/>
</menu>
我如何能调试或解决此进一步或没有任何人有从什么可能发生的logcat的日志一个更好的主意,我怎么能解决这个问题的任何想法?
谢谢!
就我而言,我找到了答案。失去了,搜索的时候一个令人沮丧的量,测试等后...
我知道基于错误的线索是,它有一些东西需要与底部导航栏。我还发现,它只是发生在释放模式,而不是在调试模式。第一个明显的事情是改变释放配置设置(改变链接选项,等...),但这些都不固定它。
所以,我做更多的研究,发现底部导航栏依靠Xamarin.Android.Support库,并且它必须是V25或更高。我已经满足了这个要求,所以这不是我的问题,无论是。
然而,我发现,我也应该有Xamarin.Android.Support.Transition库了。我注意到,这是不是在我的参考,所以我通过添加的NuGet它和猜测什么......问题解决。就这样,这么简单的东西,但与最初的测试和错误并不明显。所以,我希望这可以帮助别人。不知道为什么,当我加入了支持库没有被列入引用了一段时间后,我认为这将是自动添加过一个所需的参考。另外,为什么这会导致它在发行失败,而不是在调试,我永远不会知道!