Разработка индивидуальной версии встроенного приложения для SMS / MMS-приложений

Хорошо, вот ситуация:

Я разрабатываю приложение для клиента (или пытаюсь сделать это). Это требует много (если не всех) той же функциональности, что и встроенное приложение SMS / MMS. Итак, я подумал – ЭЙ! Android с открытым исходным кодом? Я могу принять приложение и внести изменения в мои нужды, не так ли?

Итак, я нашел код на github для приложения MMS / SMS (по какой-то причине, на основе файла AndroidManifest, он вызывает мой проект, который я построил, «ConversationList»). Но я получаю TONS ошибок, связанных с пакетом import com.google.android.mms. * И еще пару пакетов.

Все продолжают говорить «это частный / внутренний пакет» и «загрузить весь AOSP». Но, КАК я это делаю в Windows, и ПОЧЕМУ я не могу просто загрузить соответствующие пакеты для использования в программе?

ВСЕ, что я хочу сделать, это построить проект в Eclipse, развернув его на свой телефон, а затем измените необходимый код. Если Android является открытым исходным кодом, почему так много секретных / внутренних пакетов? Это расстраивает.

Любой совет?

Итак, я нашел код на github для приложения MMS / SMS (по какой-то причине, на основе файла AndroidManifest, он вызывает мой проект, который я построил, «ConversationList»). Но я получаю TONS ошибок, связанных с пакетом import com.google.android.mms. * И еще пару пакетов.

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

Но, как это сделать в Windows?

Скорее всего, вы этого не сделаете. Cygwin может работать. Скорее всего, вам нужно будет использовать OS X или Linux, например, запустить Linux в VirtualBox. И результат вашей сборки не будет работать ни на чем, кроме как часть встроенной прошивки, которую вы используете для замены прошивки на устройстве.

ПОЧЕМУ я не могу просто загрузить соответствующие пакеты для использования в программе?

Поскольку это приложение предназначено для создания как часть образа прошивки, а не как отдельное приложение.

ВСЕ, что я хочу сделать, это построить проект в Eclipse, развернув его на свой телефон, а затем измените необходимый код.

Затем найдите проект, который будет создан как автономное приложение в качестве отправной точки. Или, работа над модификацией проекта, который вы пытаетесь использовать для работы в качестве автономного приложения, вырывая все функции, которые зависят от того, что не в самом приложении.

Если Android является открытым исходным кодом, почему так много секретных / внутренних пакетов?

Они не «секретны». Они являются частью прошивки.

Например, поскольку вы, кажется, знакомы с Windows, вполне возможно, что «приложения», такие как панель управления, не предназначены для самостоятельной разработки из ОС Windows. Если вы смогли загрузить исходный код в Windows и попытались загрузить панель управления в Visual Studio, то в высшей степени возможно, что вы не сможете создать отдельный файл CPANEL.EXE только через этот один проект. Скорее, вам нужно будет использовать настраиваемый процесс сборки ОС Windows для создания всей ОС, который затем будет содержать CPANEL.EXE который будет работать внутри этой встроенной версии ОС.

Большинство приложений AOSP работают таким образом. Некоторые из них были разветвлены для создания автономных приложений – K-9 Mail появилась из ранней версии приложения электронной почты AOSP. Я понятия не имею, кто сделал это с помощью приложения AOSP Messaging или нет.

Вместо этого вы можете использовать fork TextSecure [0], поскольку это не системное приложение, но выглядит очень похоже на приложение обмена запасами. Приложение AOSP необходимо установить в / system / app, для которого требуется root, а может и не быть тем, чего хочет ваш клиент.

Обратите внимание, что это приложение является copylefted (GPLv3), поэтому вам придется предоставить клиенту доступ к исходному коду в соответствии с условиями GPL, если вы используете fork.

[0] https://github.com/WhisperSystems/TextSecure

Intereting Posts
Android Как установить значение Remote RemoteView? Андроиды Android с Robotium Eclipse: «Импорт java.io не может быть разрешен» Выберите несколько файлов с помощью Intent.ACTION_GET_CONTENT Как вычислить шаг ноги с помощью шагомера Как добавить строку между элементами в строке заголовка меню приложения в Android Studio? Android: обнаружит, когда запущено другое действие (или ваша деятельность теряет фокус) Как отключить LogCat в режиме паузы? Отключено в фрагменте, не работающем при реализации интерфейса Как создать тест apk для Android с Gradle? Атрибут Android Deeplink pathPrefix игнорируется Facebook SDK импортировать в Android Studio и добавить его в мое приложение Proguard говорит мне: «Пожалуйста, сначала исправьте приведенные выше предупреждения». Как обращаться к ссылкам внешних банок? Выбор номера у пользователя с несколькими номерами при использовании переключателя контактов Библиотека объявлений PlayServices 7.5.0 требуется разрешение WRITE_EXTERNAL_STORAGE