#android
#Android
Вопрос:
привет, я использую внедрение ключевых событий с помощью window Manager, но когда я тестировал это приложение, оно выдает ошибку
04-12 18:19:35.794: WARN/WindowManager(58): Permission denied: injecting key event
from pid 6290 uid 10039 to window Window{45034880
com.android.launcher/com.android.launcher2.Launcher paused=false} owned by uid 10020
04-12 18:19:35.794: WARN/System.err(6290): java.lang.SecurityException: Injecting to
another application requires INJECT_EVENTS permission
04-12 18:19:35.854: DEBUG/PhoneData(6290):
04-12 18:19:36.048: WARN/System.err(6290): at
android.os.Parcel.readException(Parcel.java:1247)
04-12 18:19:36.048: WARN/System.err(6290): at
android.os.Parcel.readException(Parcel.java:1235)
Я также даю разрешение на внедрение события
есть ли какой-либо способ предоставить приложению системные разрешения.
Ответ №1:
Только приложения, которые являются частью прошивки (т. Е. подписаны ключом подписи прошивки), могут иметь INJECT_EVENTS
разрешение. Если вы создаете свое собственное устройство или прошивку, это будет актуально. Если вы создаете обычное приложение SDK, вы не можете вводить события.
Ответ №2:
Обычно вы не можете этого сделать по очевидным причинам безопасности. Однако, если это делается в целях тестирования, документация по тестированию активности может оказаться полезной.
Надеюсь, это поможет.