Идентифицировать вызывающую программу

#android

#Android

Вопрос:

Я модифицирую фреймворк Android таким образом, чтобы определенные функции, предоставляемые фреймворком, вели себя по-разному в зависимости от вызывающей его программы. Так, например, если я хочу изменить метод getSimState(), чтобы он всегда возвращал SIM_STATE_ABSENT, если программа, запрашивающая состояние sim-карты, находится в пакете com.example.app1

Возможно ли это, и если да, существует ли SDK API для идентификации запрашивающего приложения? Спасибо.

Ответ №1:

Мне кажется, что такие классы, как TelephonyManager содержат Context объект, который использовался для получения объекта manager. Если это верно, вы можете использовать Context.getPackageName() для получения имени пакета вызывающей программы.