Можно ли передать пользовательский аргумент на android market, чтобы мое приложение получило его при первом запуске?

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

позвольте мне объяснить.

  1. начните намерение с argument1= "Hello world1" (пользовательский аргумент каждый время)
  2. установите приложение с android market.
  3. открываете приложение в первый раз.
  4. приложение показывает msg "Hello world1"

любой случай будет делать, а не только намерение android market.

большую часть времени приложение будет установлено с помощью сканера штрих-кодов с привязанной схемой http. Таким образом, обходной путь браузера также возможен, хранение на стороне клиента HTML5 (аргумент магазина для браузера и получить его оттуда при первом запуске моего приложения)

обновление

решением было бы создать cookie или что-то в браузере, а затем получить к нему доступ из приложения, которое я установил. Это возможно? Если да, можете ли вы предоставить некоторую информацию об этом? Могут ли браузеры обмениваться данными с приложениями?

3 ответов


вы можете опубликовать ссылку, как that
http://market.android.com/details?id=your.package.name&referrer=your_referrer_parameter
После того, как пользователь нажмет эту ссылку и установит приложение, Ваш широковещательный приемник получит широковещательный com.андроид.продажа.INSTALL_REFERRER со значением "your_referrer_parameter".

больше info:
http://code.google.com/mobile/analytics/docs/android/#android-market-tracking
Get реферер после установки приложения с Android Market
получить Android Google Analytics реферер тег


AFAIK то, что вы просите, невозможно. Рынок поставляет файлы APK только на устройства. Однако в зависимости от того, что именно вы хотите сделать, вероятно, есть много разных обходных путей.

вот пара мыслей:

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

Если вы просто хотите, чтобы приложение знало, работает ли оно в первый раз, вы можете сделать это с помощью SharedPreference. Запрос, если предпочтение, как hasAppRunBefore существует, и если это не так, то вы знаете, что приложение работает впервые с момента установки. Затем установите hasAppRunBefore переменная к некоторому значению, указывающему, что она была запущена раньше. Эта реализация позволит пользователям удалите приложение и переустановите его, и после каждой переустановки приложение будет запускаться в первый раз снова.

другой вариант представляет собой комбинацию первых двух. Вы можете подключить приложение к вашему серверу и предоставить серверу UUID устройства, тогда сервер может проверить, видел ли он этот UUID раньше. Если это не так, он предоставляет аргумент, иначе это не так.

Если вам действительно нужно, чтобы каждый APK был разным для каждого устройства, вы можете настроить сервер, который при загрузке запрос получен он компилирует новый APK и предоставляет ссылку для загрузки этого APK. Это позволит вам генерировать новый и уникальный APK для каждой загрузки. Однако это потребует от вас распространения APK самостоятельно, поскольку Android Market в настоящее время не предоставляет эту функциональность.


Я бы пошел вперед и имел веб-сайт, который перенаправляет на рынок, также толкает файл клиенту. файл можно назвать чем-то вроде "yourapp.info-и содержать необходимые вам данные. Как только ваше приложение запускается, оно может искать SD-карту (она должна находиться в нескольких известных каталогах, ака /sdcard/Downloads ) и читать этот файл. На SD-карте нет ограничений доступа.

Что касается Cookie в браузере: я не уверен, что вы можете получить доступ к cookie только из любое другое приложение - (проверьте это: blog.watchfire.com/files/advisory-android-browser.pdf -невозможно получить доступ к cookies), поэтому я думаю, что маршрут будет закрыт.