Читайте значення Build.prop із вашої програми без root-доступу

click fraud protection

Ми показали багато інструментів у минулому, які дозволяють кінцевому користувачеві змінювати свої власні буд.проп. Ми також представили набір інструментів для розробники додатків для включення які дозволяють програмам змінювати файл. Усім цим (очевидно) потрібен доступ root, оскільки ви змінюєте налаштування системи. Однак на сьогоднішній день ми не представили метод читання буд.проп із програми.

Існує багато причин, чому розробник додатків хоче мати доступ до пристрою лише для читання буд.проп. Щоб дізнатися про його програмну чи апаратну конфігурацію, або просто зазирнути в якусь систему налаштувань, пошук цієї скарбниці інформації потенційно є дуже корисним для програми розробник. Однак вимагати root-доступ для цього не потрібно як з точки зору проблем користувача, так і з точки зору безпеки.

У пошуках доступу до буд.проп зі свого власного додатку, не вдаючись до root, учасник форуму XDA торпеда мохаммаді написав пару рядків коду та поділився ним із спільнотою. Те, як він це робить, можна підсумувати в його поясненні:

1. Створіть процес, який виконує "getprop" з каталогу "/system/bin/getprop" та ініціалізуйте рядок, який ми хочемо отримати (у прикладі ro.board.platform).

2. Створіть BufferedReader, який отримує значення (String) шляхом отримання даних з inputStreamReader().

3. Перетворіть BufferedReader на String.

Перейдіть до оригінальна нитка щоб почати, скопіюйте код і реалізуйте його у своїй програмі.