2011-11-20 4 views
0

У меня есть проект для Android. В этом проекте мой клиент спросил меня следующий сценарий, но я не уверен, что это возможно.Android, можно ли объединить два файла APK?

Они хотят создать магазин приложений для Android. В этом магазине после того, как разработчик загрузит свое приложение, мы должны перенести этот файл APK с нашим файлом APK (поэтому у нас будет один файл APK). Эта оболочка добавляет некоторые действия в приложение разработчика, чтобы пользователи могли проверять свои кредиты и добавлять кредиты, если у них недостаточно кредитов для их учетной записи (мы не хотим манипулировать кодом разработчика, мы просто хотим добавить наш код в свои код). Поэтому, когда пользователь загружает и устанавливает это приложение, каждый раз, когда он запускает приложение, наша обертка должна запускаться первой и проверять его/ее финансовую учетную запись через Интернет, если у него достаточно кредита на его счете, поэтому он/она может использовать приложение. Если у него недостаточно кредитов, мы должны посоветовать ему/ей купить больше кредитов.

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

В первом приложении я просто показываю текст в своей деятельности, а во втором проекте (обертке) я создал кнопку, которая, когда я нажимаю на нее, должен запускать первый проект. Результат не был удовлетворительным, и я не смог его запустить.

Я думаю, что если я экспортирую JAR-файл из первого проекта и повторю процедуру выше, у меня будут лучшие результаты, но потому что в будущем мы не сможем попросить разработчиков разместить JAR-файл вашего приложения вместо APK, это нехорошо идея.

Теперь, около недели, я думал об этой истории, и я не мог найти способ узнать, как я могу консолидировать и объединить приложение разработчика с нашим приложением-оболочкой.

Если у вас есть предложения, пожалуйста, руководствоваться мной.

ответ

0

Лучший способ получить что-то по этим линиям будет следующим.

  1. Установите несколько разрешений для доступа к данным из вашего приложения «магазин». используя эти же разрешения, вы можете определить, установлено ли какое-либо из этих приложений на телефоне.

  2. Ваше намерение сделать ContentProvider доступ к информации учетной записи пользователя и получить эту информацию в вашем приложении «store». Используя этого поставщика контента, вы настраиваете api для доступа к информации о пользователе в сторонних приложениях.

На данный момент у вас должен быть доступ ко всем данным пользователей (также использовать кредит) и знать, установлены ли эти приложения.

Теперь для третьей стороны приложения

  1. Мое предложение сделать .jar файл, который использует контент-провайдера. Кроме того, действия, которые делают некоторые основные вещи, такие как обеспечение вашего магазина и многое другое. Свяжите это приложение и попросите сторонних разработчиков использовать его при создании приложений.

  2. установить образец приложения для использования вашей банки и соответствующей документации. Очень важно всегда так тяжело, когда в файле jar нет соответствующей документации. Но в основном вы должны иметь статические и вспомогательные классы для каждого аспекта взаимодействия с учетной записью пользователя. И приложение должно запрашивать разрешение на использование этой информации.

Вот несколько обучающих программ для контент-провайдеров, а также ссылка на параметры манифеста, чтобы провайдер мог работать с разрешениями.

http://developer.android.com/guide/topics/providers/content-providers.html http://thinkandroid.wordpress.com/2010/01/13/writing-your-own-contentprovider/ http://www.devx.com/wireless/Article/41133/1763/page/2 http://about-android.blogspot.com/2010/04/content -provider-пример-1.html

http://developer.android.com/guide/topics/manifest/provider-element.html#prmsn

Одна последняя вещь, если вы не хотите стороннего приложения, появляющийся на пользователя нормальной пусковой для какой-то причине вы можете потребовать, чтобы разработчики также не добавляют CATEGORY_LAUNCHER к их основной Мероприятия. В этом случае вам нужно будет запросить основную деятельность в вашем приложении магазина.

+0

Что делать, если у меня нет контроля над всеми файлами сторонних сторон APK? Я имею в виду, как в существующем приложении, которое больше не поддается изменению, я все равно хотел бы написать оболочку, чтобы она не запускалась ... – Zennichimaro

Смежные вопросы