我正在开发一个应用程序,每次运行它时,我都会收到这样的消息:
不幸的是,MyApp已停止。
我可以做什么来解决这个问题?
关于这个问题-显然是受什么是堆栈跟踪以及如何使用它调试应用程序错误的启发?,有很多问题表明他们的应用程序已经崩溃,没有任何进一步的细节。这个问题旨在指导Android新手程序员如何自己解决问题,或者提出正确的问题。
我正在开发一个应用程序,每次运行它时,我都会收到这样的消息:
不幸的是,MyApp已停止。
我可以做什么来解决这个问题?
关于这个问题-显然是受什么是堆栈跟踪以及如何使用它调试应用程序错误的启发?,有很多问题表明他们的应用程序已经崩溃,没有任何进一步的细节。这个问题旨在指导Android新手程序员如何自己解决问题,或者提出正确的问题。
当前回答
在下面的showToast()方法中,您必须为上下文或应用程序上下文传递另一个参数,这样您就可以尝试。
public void showToast(String error, Context applicationContext){
LayoutInflater inflater = getLayoutInflater();
View view = inflater.inflate(R.layout.custom_toast, (ViewGroup)
findViewById(R.id.toast_root));
TextView text = (TextView) findViewById(R.id.toast_error);
text.setText(error);
Toast toast = new Toast(applicationContext);
toast.setGravity(Gravity.TOP | Gravity.FILL_HORIZONTAL, 0, 0);
toast.setDuration(Toast.LENGTH_SHORT);
toast.setView(view);
toast.show();
}
其他回答
你必须检查堆栈跟踪
如何做到这一点?
在IDE上检查窗口窗体LOGCAT
如果你看不到原木色的窗户,就去这条路打开它
window->show view->others->Android->Logcat
如果您正在使用Google Api,请转到以下路径
adb logcat>logcat.txt
使用LogCat并尝试查找导致应用程序崩溃的原因。
如果您使用Android Studio,请按ALT+6查看Logcat或
如果您使用Eclipse,那么窗口->打开透视->其他-LogCat
转到LogCat,从下拉菜单中选择错误。这将包含帮助您调试所需的所有信息。如果这没有帮助,发布LogCat作为对您问题的编辑,有人会帮助您解决问题。
您可以使用以下任何工具:
adb测井仪adb logcat>logs.txt(您可以使用编辑器打开和搜索错误。)eclipse日志猫(如果在eclipse中不可见,请转到Windows->显示视图->其他->Android->日志猫)Android调试监视器或Android设备监视器(键入命令监视器或通过UI打开)
Android工作室
我建议使用Android调试监视器,它很好。因为当日志太多时,eclipse会挂起,而且通过adb logcat过滤器等都很困难。
只需检查日志cat中的错误。
您可以从eclipse中获得logcat选项:
窗口->显示视图->其他->Android->Logcat
日志目录包含错误。
另外,您也可以通过在调试模式下执行应用程序来检查错误。首先通过以下操作设置断点:
右键单击项目->调试为->Android应用程序
首先,您需要检查应用程序崩溃的位置和原因(不幸的是,MyApp已停止)。借助LOG,您可以找出问题所在。
之后,你会发现你的应用程序停止了从你的角度修复它。