获取崩溃时的应用日志

时间:2018-02-01 11:58:14

标签: ionic-framework crash logcat crash-reports

我们在这里有一种情况,我们希望在我们的IONIC1应用程序崩溃时看到一些日志记录(即使它一直崩溃)。 我们考虑过阅读logcat,但这只有在你拥有root设备的情况下才有效....它可以正常工作,但由于我们不能让所有设备与我们一起手动运行adb脚本以将root日志授予a记录应用程序,我不知道该怎么做。 谁有同样的情况,并附带解决方案?

提前致谢!

1 个答案:

答案 0 :(得分:1)

你应该尝试一些第三方日志工具,建议你从Fabric开始! (特别针对Crashlytics)

https://fabric.io/home

更新:

如果您想将您的日志写入文件,请尝试以下几行:

 try {
        Process process = Runtime.getRuntime().exec("logcat -d ");
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(process.getInputStream()));
        String line;
        while ((line = bufferedReader.readLine()) != null) {
            log.append(line).append("\n");
        }
    } catch (IOException ignored) {
    }
    String address = writeToLogcatFile(c, log.toString());
    boolean success = !address.equals("");

另外考虑创建自己的记录器并添加导出它的功能,只需制作一组适当调用日志记录的函数

 public static void v(String TAG, String msg) {
    Logv(TAG, msg);
    if(showOnScreen) {
        Galgo.log(TAG + ": V: " + msg);
    }
}
 private static void Logv(String tag, String msg) {
    if(BuildConfig.DEBUG){
        log.v(tag, msg);
    } else {
        logToTheFileToExportOrDBOrSomethingElse();
    }
}