Используйте Android Studio для разработки системного приложения — создайте среду разработки.

Обычные приложения можно разрабатывать непосредственно с помощью Android Studio. Если вы хотите разработать системное приложение и обеспечить его отладку на целевой машине, вам необходимо решить следующие проблемы:

  1. Вызов API, скрытых Google
  2. Используйте API и разрешения системного уровня.
  3. Включите разработанное приложение для запуска на целевом компьютере.

В этой статье описано, как настроить среду разработки Android Studio для решения проблемы 1.
Решения проблем 2 и 3 можно найти в статье: https://blog.csdn.net/cxq234843654/article/details/51557025 .

Версия среды разработки: compileSdkVersion 27, Android Studio 3.3.

1. Получите пакет Jar Framework с удаленным тегом атрибута @hide.

Этот шаг необходимо выполнить в среде Linux:

  1. Удалите тег @hide, связанный с API, в исходном коде Android.
  2. Скомпилируйте исходный код Android
  3. Получите сгенерированный пакет Framework Jar (classes-full-debug.jar) и переименуйте его в framework.jar.

2. Настройте свойства проекта Android Studio.

  1. Скопируйте файл framework.jar, полученный на предыдущем шаге, в папку \app\libs в каталоге проекта.
  2. В структуре каталогов проекта щелкните правой кнопкой мыши и выберите «Добавить как библиотеку», чтобы добавить пакет в переменную среды.
  3. В структуре каталогов Android откройте файл build.gradle проекта и добавьте следующий контент в модуль allprojects:
allprojects {
    
    
   repositories {
    
    
       // 省略无关内容
   }
   // 需要添加的内容
   gradle.projectsEvaluated {
    
    
       tasks.withType(JavaCompile){
    
    
           options.compilerArgs.add('-Xbootclasspath/p:app/libs/framework.jar')
       }
   }
}
  1. В структуре каталогов Android добавьте следующее содержимое в первую строку зависимой библиотеки в файле build.gradle приложения, чтобы предотвратить проблему выхода за пределы массива, вызванную двумя наборами платформ.
dependencies {
    
    
   // 需要添加的内容
   compileOnly files('libs/framework.jar')
   // 省略无关内容
}
  1. В структуре каталогов проекта измените приоритет вызова Framework.jar в app/app.iml и поместите в конец следующее определение порядка системного SDK:
<orderEntry type="jdk" jdkName="Android API 27 Platform" jdkType="Android SDK" />

После выполнения вышеуказанных 5 шагов вы можете использовать Android Studio для разработки системного приложения.
Шаг 5 иногда не работает, потому что при синхронизации gradle автоматически переходит к первому шагу. Однако это не влияет на компиляцию, но для отчетов об ошибках будет красная линия, и эти API не могут быть завершены автоматически.

Справочная статья:
http://www.cnblogs.com/startkey/p/10042194.html .

Guess you like

Origin blog.csdn.net/cshoney/article/details/90144373