2016-11-16 45 views
5

どうすればadb shell setprop mypropertykey mypropertyvalueが動作するのかご理解したいと思います。言い換えれば、私はadbコマンドを使用してbuild.propファイルを編集して、システムフォルダに変更されたファイルをプッシュしようとしましたが、プロセスを使用してbuild.propファイルから値を読み取ると、空白の値。adbシェルのgetpropとsetpropの動作はどうですか

しかし、ルートモードでシェルからプロパティを設定し、エミュレータのルートを解除してコードを使用して値を読み取ると、値を取得できます。

私が理解できないことは、値がシェルを介して設定されている場合、なぜbuild.propファイルに書き込まれないのでしょうか?そしてどこからgetpropの値を読んでいますか?

答えて

5

Androidシステムのプロパティは、特別なproperty_serviceによって管理されています。 /system/build.propは、起動時にproperty_serviceが内部のメモリ内データベースを読み込むために使用する既定値を含む読み取り専用ファイル(バージョンによって異なる)のうちの1つです。したがって、実行時にファイルを変更しても、再起動後に変更が反映されることはありません。

setpropおよびgetpropコマンドは、そのデータベース内のデータにアクセスするために使用されます。プロパティ名がpersist.で始まる場合を除き、値は/data/propertyフォルダに格納されます。

+0

build.propファイルから読み込む必要がある埋め込みアプリケーションがある場合、そのデバイスは既に再起動されているので、その値は常に使用可能です。 –

関連する問題