回答:
マーケットにあるこれらの無料アプリは、logcatを表示できると主張しており、ルートについては言及していません。それらを試してみるのに数分しかかからないはずです:
編集:これらのアプリでは古いバージョンのAndroidでのみ完全なログファイルを表示できることを思い出させてくれた@menteに感謝します。Android 4.1は、ログファイルを中心とした新しいセキュリティモデルを導入しました。つまり、アプリは自分のログファイルとログファイルエントリのみを読み取ることができ、システムや他のアプリによって書き込まれたログファイルエントリを読み取ることはできません。
ただし、アプリのユーザーがアプリの最近のログエントリのログファイルを生成して開発者に送信する方法と、電話の所有者が完全なルートなしでアプリがログファイルを読み取ることを許可する権限を付与する方法の両方がありますが、これはADBコマンドを使用する必要がありますが、残念ながら、ほとんどの通常の電話ユーザーの手の届かないところにあります。
ユーザーにデバッグ情報を提供してもらいたい場合は、パワー+ボリュームダウン+ボリュームアップでログと他の多くのデータを含むバグレポートを生成し、自動的に電子メールアプリを起動してすべてを送信することができます。 (さらにスクリーンショット)。これらについても簡単に生成する方法があるはずだと話していたところですが、設定アプリに何かを追加する方法を見ていきます。
また、ログの読み取りが分類される「開発」権限の概念の導入も始めました。これにより、アプリは権限をリクエストできますが、インストール時に取得することはできません。ただし、インストールしたら、adb shellコマンドを使用して付与でき ます。ある時点で、これを行うためのシステムにUIがあると予想しますが、これを保留して、これをどのように表示するかについて注意する予定です。
Android Framework EngineerであるDianne HackbornによるGoogleグループの投稿からの抜粋 私の強調。
アプリケーションにログの読み取り権限を付与する前述のADBコマンドは次のとおりです。
adb shell pm grant <pkg> android.permission.READ_LOGS
この設定は、アプリの再起動およびアップグレード後も存続します(アンインストール/再インストールはできません)。
あなたは実行するには、rootにお使いの携帯電話を必要としないadb logcat
AndroidのSDKで、私はちょうど私の中でそれをテストしたターミナルエミュレータと私はルート(使用する必要がなかったsu
コマンド-私の携帯電話はすでに根付いている)でlogcatを実行します私の電話の端末。
だからはい:あなたの電話にrootがあれば、あなたの電話のターミナルからlogcatを実行できます。
いいえ、logcatにアクセスするのにrootは必要ありません。私のデバイス(Samsung Galaxy Note、Gingerbread 2.3.6 with stock ROM)はルート化されていません(まだ!)。デバイスのログにアクセスするために次の方法を使用しました。
adb logcat
ただし、ターミナルアプリではlogcatを実行できず、「アクセスが拒否されました」と表示されます。理由はわかりません。
アプリケーションAndroid System Infoには、ログ情報を画面に出力する機能があります。これは、私が知る限り、logcatが出力するログ情報と同じです。
Logcatはrootを必要としません。シンプル-さまざまなAndroidバージョンに関する全面的なデファクトスタンダードであり、ルート権限を取得しているかどうかに関係なく、Androidの一部であり、たとえば、アプリをインストールして、問題を診断するための標準的な手段です。アプリの強制終了、あなたはそのアプリの開発者に文句を言います、あなたがルート化されているかどうかに関係なく、開発者が「logcat経由で送信する」と尋ねる可能性はかなり高いです!
aLogCatは情報を収集する1つの方法です。Webページレイアウトまたはプレーンテキストにログを記録するオプションを使用して、15分ごとなどの特定の頻度でログを記録するようにスケジュールすると、SDカードがすぐにいっぱいになることに注意してください。
別の側面として、logcatの使用法は、それがどれだけ格納できるかという点でカーネルに依存します-ROMによって使用される任意のカーネルで、logcatサービス用にメモリを予約するカーネルレベルからのロギングのソースdrivers/staging/android/logger.c
たとえば、適切な定義を使用して見つけることができます:
DEFINE_LOGGER_DEVICE(log_main、LOGGER_LOG_MAIN、64 * 1024)DEFINE_LOGGER_DEVICE(log_events、LOGGER_LOG_EVENTS、256 * 1024)DEFINE_LOGGER_DEVICE(log_radio、LOGGER_LOG_RADIO、64 * 1024)DEFINE_LOGGER_DEVICE(log_system、LOG_system、LOGGER_LOG_system、LOGGER
繰り返しますが、走行距離は異なります。そのようなROMの一部の開発者は、消費を最小限に抑えてメモリのオーバーヘッドを減らすことを選択します...