AOSP добавляет новую настраиваемую системную службу

Я загрузил исходный код Android с source.android.com, построил его и смог успешно запустить его на эмуляторе.

Теперь я хочу добавить новую системную службу в Android. У меня нет особого представления о создании и использовании AOSP, учитывая, что я делаю это впервые.

Я последовал этой простой статье при добавлении TestService в AOSP. Добавлены новые коды, соответственно изменен SystemServer.java, но команда make не увенчалась успехом.

После внесения изменений я запустил

make update-api
для обновления current.txt, после чего я запустил
make -j4 command
, который завершился ошибкой со следующими ошибками.

frameworks/base/services/java/com/android/server/SystemServer.java:268: illegal character: \8220
            ServiceManager.addService(“Test”, new TestService(context));
                                      ^
frameworks/base/services/java/com/android/server/SystemServer.java:268: ';' expected
            ServiceManager.addService(“Test”, new TestService(context));
                                       ^
frameworks/base/services/java/com/android/server/SystemServer.java:268: illegal character: \8221
            ServiceManager.addService(“Test”, new TestService(context));
                                           ^
frameworks/base/services/java/com/android/server/SystemServer.java:268: ';' expected
            ServiceManager.addService(“Test”, new TestService(context));
                                            ^
frameworks/base/services/java/com/android/server/SystemServer.java:268: ';' expected
            ServiceManager.addService(“Test”, new TestService(context));
                                                                      ^

Очевидно, что ошибки находятся в тех строках, где я добавил пару строк в SystemServer.java для регистрации службы. Итак, как мне бороться с ошибками компиляции в java-файлах, которые я добавил / изменил? Я думаю, что это что-то тривиальное, но у меня недостаточно опыта работы с AOSP, чтобы овладеть этим. Любые мысли / предложения приветствуются.


person Adi GuN    schedule 30.03.2014    source источник
comment
Я считаю, что вы используете забавные кавычки, которые явно недопустимы в исходном коде. Если я экспериментально инициирую редактирование вашего сообщения и наберу нормальный символ цитаты рядом с вашим, они будут выглядеть иначе. Возможно, у вас есть какие-то настройки интернационализации, которые сбивают с толку? Вы можете попробовать скопировать и вставить из рабочего исходного кода.   -  person Chris Stratton    schedule 31.03.2014
comment
Ага, я использую цитаты. Но я проверил код в SystemServer.java (это тот же файл, который я редактировал), и в нем используются те же кавычки.   -  person Adi GuN    schedule 31.03.2014
comment
Я предлагаю вам изменить их, так как это явно источник ошибки.   -  person Chris Stratton    schedule 31.03.2014
comment
Можем ли мы добавить системную службу в AOSP без загрузки полного кода AOSP на нашу машину. Есть ли способ написать и запустить системную службу в IDE и отправить код в AOSP после полной работы и тестирования.   -  person Parmeshwar C    schedule 15.07.2019


Ответы (1)


Как заметил Крис, это произошло из-за «смешной» цитаты, которая проникла внутрь.

person Adi GuN    schedule 31.03.2014
comment
Можем ли мы добавить системную службу в AOSP без загрузки полного кода AOSP на нашу машину. Есть ли способ написать и запустить системную службу в IDE и отправить код в AOSP после полной работы и тестирования? - person Parmeshwar C; 15.07.2019
comment
к сожалению нет - person Hitesh Sahu; 20.01.2020