как получить сертификат платформы для подписи приложения, которое выполняет перезагрузку - PullRequest
0 голосов
/ 31 мая 2011

Ссылка Получите разрешение REBOOT в приложении Android действительно предоставляют небольшую информацию. Я могу подписать приложение с помощью debug.keystore, но я должен подписаться тем же ключом, который используется системой, чтобыон разрешает перезагрузку. Где найти пары ключей платформы / сертификата?

Ответы [ 3 ]

3 голосов
/ 31 мая 2011

Вы не сможете подписать, используя системную подпись .Это очень простая мера безопасности.

Как сказал CommonsWare в ответе, который вы указали, для этого вам понадобится специальная прошивка.Более простым вариантом является предоставление функциональности только в рутированных телефонах (простой способ сделать это см. Здесь: Может ли приложение администрирования устройства на рутированном телефоне Android программно принудительно завершить работу или перезагрузиться? ).

2 голосов
/ 24 августа 2015

Отметьте здесь, если вы работаете на эмуляторе: основы для создания системы apk

Если вы работаете на реальном устройстве:

  1. Вам нужна подпись поставщика, которая используется для подписи всех модифицированная система Android внутри устройства.
  2. У вас не будет системной подписи любого производителя, если они опубликуйте это.
  3. Таким образом, вы не получите подпись или файлы платформы, если вы не у вас есть папка vendor / security в устройстве.

Вы должны перейти на метод рутирования после того, как ваше приложение будет готово к установке.

  • Root your phone
  • Откройте терминал на вашем компьютере, перейдите в папку platform-tools и запустите исполняемый файл adb
  • adb push /path/to/your/apk/your_apk.apk /sdcard/Download
  • Перейти в adb shell
  • su
  • mount -o remount,rw /system
  • cp /sdcard/Download/your_apk.apk /system/app
  • chmod 666 /system/app/your_apk.apk
  • перезагрузите телефон

После перезагрузки у вас будет приложение, которое работает с системными разрешениями.

РЕДАКТИРОВАТЬ: Не уверен, работает ли он для 5.0 +, используется для 5.0 и ниже.

0 голосов
/ 07 сентября 2011

Создание APK, который должен быть подписан ключом платформы

  LOCAL_PATH := $(call my-dir)
  include $(CLEAR_VARS)

  # Build all java files in the java subdirectory
  LOCAL_SRC_FILES := $(call all-subdir-java-files)

  # Name of the APK to build
  LOCAL_PACKAGE_NAME := LocalPackage

  LOCAL_CERTIFICATE := platform

  # Tell it to build an APK
  include $(BUILD_PACKAGE)
...