我正在尝试获取完整的异常日志“就像我们在android studio中一样” 从我们在App类中拥有的错误对象 更具体地说,这是我的App.java
import android.app.Application;
import android.content.Context;
import android.support.multidex.MultiDex;
/**
* Created by informatic on 17/03/2018.
*/
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
Thread.setDefaultUncaughtExceptionHandler((t, e) -> {
e.printStackTrace();
StringBuilder massage=new StringBuilder();
for (int i = 0; i < e.getStackTrace().length; i++) {
massage.append(e.getStackTrace()[i].toString());
}
String s=massage.toString();
System.out.print(s);
});
}
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
在NullPointerException之后,这是字符串s
在异常之后将包含的内容
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2417)android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2469)android.app.ActivityThread.access $ 1100(ActivityThread.java:151)android.app。 ActivityThread $ H.handleMessage(ActivityThread.java:1362)android.os.Handler.dispatchMessage(Handler.java:110)android.os.Looper.loop(Looper.java:193)android.app.ActivityThread.main(ActivityThread。 java:5551)java.lang.reflect.Method.invokeNative(本机方法)java.lang.reflect.Method.invoke(Method.java:515)com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java :914)com.android.internal.os.ZygoteInit.main(ZygoteInit.java:730)dalvik.system.NativeStart.main(本机方法)
但是另一方面,logcat将打印此内容
com.automata4.www.sanad E / Android运行时:致命异常:主要 流程:com.automata4.www.sanad,PID:31429 java.lang.RuntimeException:无法启动活动ComponentInfo {com.automata4.www.sanad / com.automata4.www.sanad.frontend.activities.home.HomeActivity}:java.lang.NullPointerException 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2417) 在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2469) 在android.app.ActivityThread.access $ 1100(ActivityThread.java:151) 在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1362) 在android.os.Handler.dispatchMessage(Handler.java:110) 在android.os.Looper.loop(Looper.java:193) 在android.app.ActivityThread.main(ActivityThread.java:5551) 在java.lang.reflect.Method.invokeNative(本机方法) 在java.lang.reflect.Method.invoke(Method.java:515) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:914) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:730) 在dalvik.system.NativeStart.main(本机方法) 造成原因:java.lang.NullPointerException 在com.automata4.www.sanad.frontend.activities.home.HomeActivity.getAndSetUi(HomeActivity.java:48) 在com.automata4.www.sanad.frontend.activities.home.HomeActivity.onCreate(HomeActivity.java:42) 在android.app.Activity.performCreate(Activity.java:5310) 在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088) 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2381) 在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2469) 在android.app.ActivityThread.access $ 1100(ActivityThread.java:151) 在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1362) 在android.os.Handler.dispatchMessage(Handler.java:110) 在android.os.Looper.loop(Looper.java:193) 在android.app.ActivityThread.main(ActivityThread.java:5551) 在java.lang.reflect.Method.invokeNative(本机方法) 在java.lang.reflect.Method.invoke(Method.java:515) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:914) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:730) 在dalvik.system.NativeStart.main(本机方法)
所以我的问题是
有什么方法可以像e
对象的先前输出那样,以便我可以将此完整的异常发送到我的服务器?