3

位置情報サービスを使用するアプリケーションを開発しています。を使用してアプリケーションをデバッグする必要がありますLog.d()が、それにはデバイスをコンピューターに完全に接続する必要があります。そして、それは私には不可能です。旅行中に約 2 時間アプリをテストします。その時はPCに接続できません。

ログを電話に保存して後で取得し、ログ データを表示する方法はありますか。

4

2 に答える 2

3

ファイルとコンソールの両方に出力をリダイレクトするクラスLoggerのラッパーである独自のクラスを導入します。android.util.Log

public class Logger {

    public static PrintWriter printWriter = null;

    private static void init() {
        ...
        // Check if external media is writable
        ...

        if (printWriter == null) {
            try {
                File dir = new File(Environment.getExternalStorageDirectory() + LOG_DIR);
                dir.mkdirs();
                printWriter = new PrintWriter(new FileWriter(new File(dir, LOG_FILE), true));
            }
            catch (IOException e) {
                Log.e(Logger.class.getName(), "initExternal() -> IOException", e);
            }
        }
    }

    private static synchronized int log(int priority, String tag, String msg) {
        int res = Log.println(priority, tag, msg);

        init(); // May be called just once, depending on your requirements

        printWriter.print(tag + "   ");
        printWriter.print(msg + "\r\n");
        printWriter.flush();
        return res;
    }


    // Duplicates of standard android.util.Log methods:
    public static int v(String tag, String msg) {
        return log(Log.VERBOSE, tag, msg);
    }
    public static int v(String tag, String msg, Throwable tr) {
        return log(Log.VERBOSE, tag, msg + '\n' + Log.getStackTraceString(tr));
    }
    public static int d(String tag, String msg) {
        return log(Log.DEBUG, tag, msg);
    }
    public static int d(String tag, String msg, Throwable tr) {
        return log(Log.DEBUG, tag, msg + '\n' + Log.getStackTraceString(tr));
    }

    ...

}
于 2012-04-11T08:08:45.373 に答える
1

ログの最後の数百行を取得して、送信先のメールにメールで投稿するアプリがあります。私はログコレクター https://play.google.com/store/apps/details?id=com.xtralogic.android.logcollector&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS54dHJhbG9naWMuYW5kcm9pZC5sb2djb2xsZWN0b3IiXQを使用しており、それをお勧めできます。あなたのためにしてください:D

于 2012-04-11T08:04:41.747 に答える