ルートアクセスなしでNexus 7のAndroidログファイルにアクセスするにはどうすればよいですか?


9

以来aLogcatは、もはやジェリービーンと連携していない、どのように私はどちらかのルートアクセスせずに私のデバイス上のシステムログファイルにアクセスしたり、コンピュータに取り付けることができますか?

adb logcat自分のPCから使用してみましたが、問題なく動作したので、大量のメッセージがログに記録されていることがわかります。

使用してlogcatからAndroidのターミナルエミュレータもののほとんどない出力私のネクサス7のショーでadb logcatAndroidのターミナルエミュレータ、デーモンを起動しますが、その後だけ言う- waiting for device -と、何もより表示されません。

では、ルートアクセスなしで Nexus 7のAndroidログファイルにアクセスすることは可能ですか?



@Izzy-この質問の要点は、(この質問でリンクした)私の他の質問のすべてのソリューションがrootアクセスを必要とすることです。これらのソリューションは、デバイスをルート化したことがあるユーザーには役立ちますが、デバイスをルート化していないユーザーには、より具体的なソリューションが必要でした。
Markブース

あなたは一見の価値があるPhoneHomeを見つけるかもしれません
Dori

回答:


12

いいえ、セキュリティ上の理由により、Nexus 7(またはJelly Bean以降を実行している他のデバイス)のAndroidログファイルにルートアクセスなしでアクセスすることはできません。GoogleはJelly Beanでそれを変えました。

aLogCatなどのlogcatリーダーが修正されるまで待つことをお勧めします(つまり、すべてのログを表示するにはrootアクセスが必要になります)。

AISEC-TR-2012-001-アンドロイドOS-Security.pdf - 3.3アンドロイド許可モデル

READ_LOGS権限は、Androidのバージョン、つまりインストールされている標準アプリのバージョンに応じて、多くのデバイスで次のものを置き換えることができます。

  • READ_CONTACTS

  • GET_TASKS –開始されたすべてのアクティビティがシステムのログにリストされます

  • READ_HISTORY_BOOKMARKS –新しいWebページを開くことはブラウザのアクティビティであるため、ログに記録されます

  • READ_SMS

以下のすべてのソリューションにはrootアクセスが必要です

シェルでrootとしてlogcatを実行するか、シェルのpmコマンドでrootに手動で付与する必要があります(rootが必要)も機能します(XDAを参照し、org.jtb.alogcat.donateをアプリのpkg名と交換してください)。

pm grant org.jtb.alogcat.donate android.permission.READ_LOGS

これは怠惰な人のためのものであり推奨されていません:絶望的で不注意で怠惰な場合は、この醜くて安全でないハックを適用してすべてのアプリにREAD_LOGS権限を与えることで修正できます(twitter経由のChainfire):

chmod 04755 /system/bin/logcat

CyanogenMod開発者のKoushik DuttaのG + 投稿を引用すると、次のようになります。

JellyBeanでAndroidログの権限/動作は変更されましたか?

アプリケーションが「logcat」を今実行すると、そのUIDによって作成されたログエントリしか表示されないようです。他のUIDからのログ行は表示されません。基本的には、今はフィルタリングされているようです。

通常と同じ権限を持っています。他のログコレクターアプリでも同じことが起こっていることを確認しました。


私が知っている根がなければ方法はありません。セキュリティのために。JellyBean以降、read_logs権限を付与する必要がなくなりました(いずれのアプリも、自分のログのみを表示できます)。
ce4 2012

編集とxdaへのリンクをありがとう、私はそれを統合しました。
ce4

pm grantオプションを追加していただきありがとうございます。私は今で言うようにという注意私の他の答え、あなたが使用していない場合は、わずかに異なるパッケージを指定する必要が寄付のバージョンaLogcatをpm grant org.jtb.alogcat android.permission.READ_LOGS
マーク・ブース

参考資料READ_LOGSREAD_CONTACTS、一部のプラットフォームでがどのように等しいかを説明するためのものです。一部のアプリが連絡先データをログに記録するという意味ですが、実際にはとは異なりREAD_CONTACTSます。しかし、私はその論文は警戒心のある口調で書かれていると言います。
Flow

READ_LOGSは、単なる連絡先データよりも多くの情報をリークします。ユーザーの名前、おそらくGmailアドレス、場所、インストールされているアプリ(アプリの使用状況も)などがあります。さらに、ルートエクスプロイトによって、ASLR以前の時代にシステムデーモンのスタックダンプからアドレスを読み取って抽出するために使用されていました。大きな部分(4.1±)でオフになっているので、群れから保護することができます(無病ワクチン接種集団で子供にワクチン接種しないことと比較してください)。問題が迫り、グーグルは正しいことをした。
ce4 2013年

1

それはいくつかのことを説明するでしょうが、私はこれに混乱しています。

私のnexus7と私のギャラクシーネクサスの両方で同じアプリをジェリービーンで実行すると、電話にはすべてのアプリからのログ出力が表示されますが、タブレットには表示されません。これは、ネクサス7ではなく、ジェリービーンではないと言います。これを裏付けるために、私はチェックしたところ、両方に異なるカーネルがあります。新しいタブレットを搭載したタブレット。

多分それは更新されたカーネル、つまりログが表示されないことを意味します。

結局のところ、応援する必要があると思います:(


追加の情報をありがとう、それは興味深いRussです。
マークブース

実際に、ログを表示するために使用しているアプリがICSを使用しているときに自分のマシンにインストールされたため、ログを表示するためのアクセス許可が保持されていることが確実にわかりました。
ラスウィーラー

1

私は別のアプローチを使用するLogcatアプリを開発しまし。リモートデバッグ機能を利用しています。最初に電話でそれを有効にする必要がありますが、それは一度だけ行う必要があり、その後アプリを使用してすべてのログを取得できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.