2012-06-25 16 views
5

Se sabe que podemos enviar el intento como se describe en el siguiente enlace y luego redirige al usuario a Google Play.Redirigir usuario a App Store en Android

Uri marketUri = Uri.parse("market://details?id=" + packageName); 
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri); 
startActivity(marketIntent); 

Pero el problema es que toda tienda de aplicaciones, especialmente App Store de Amazon (Kindle en), puede manejar este propósito, así?
sé que el siguiente URI debe redirigir al usuario tienda de aplicaciones de Amazon:

http://www.amazon.com/gp/mas/dl/android?p=package 

Pero, yo no quiero tener dos binarios, una para Android ordinaria y la otra para Amazon.

+0

¿No pudo detectar el dispositivo y usar cualquiera de las URL dependiendo del dispositivo? –

+0

Sí, pero creo que no es una buena solución. En realidad, no solo hay Google Play y Amazon App Store, hay muchas tiendas de aplicaciones en China, teléfono/tableta Android. Y no puedo manejar todos los dispositivos ... Por cierto, sé que puedo conseguir el fabricante, pero no sé la cadena exacta devuelta desde un dispositivo de Amazon, ya que no tengo un dispositivo en la mano – Bear

+2

Cómo encontrarlo dispositivo -> http://stackoverflow.com/questions/8309624/detect-app-is-running-on-kindle-fire –

Respuesta

3

No hay un método genérico, lo que debe hacer aquí es establecer un grupo de indicadores en su código.

por lo que tendría algo así como

boolean AMAZON_APK=true; 
boolean ANDROID_APK =false; 
.... 

Luego puedes establecer los valores adecuados cuando se desea publicar en Amazon y cuando se desea publicar en Juego Android. En su código antes de lanzar el mercado, debería verificar las banderas con un montón de declaraciones if e iniciar la intención adecuada según lo que soporte el mercado en particular. Esto no es un gran problema ya que solo tienes que cambiar algunas variables.

if(AMAZON_APK) 
    //launch amazon intent 
if(ANDROID_APK) 
    //launch android market intent 
.... 

Puede ver un ejemplo más completo aquí. How can I do an Amazon App Store search using an Intent and filter it by developer name? también, si algunos mercados no admiten algo parecido a una intención del mercado, puede lanzar un enlace a un sitio web móvil y dirigir al usuario a sus aplicaciones desde allí.

+0

Como mencioné antes, no quiero tener dos binarios separados. Lo que quiero saber es que los dispositivos de Amazon pueden reconocer la intención que mencioné anteriormente. Sé que está prohibido en la tienda de aplicaciones de Amazon, pero no me importa, ya que no planeo subirlo a su tienda de aplicaciones. Solo quiero asegurarme de que funciona si realmente está en el dispositivo Amazon – Bear

+0

Correcto, aunque no puedo confirmar lo que kindle hace con la intención del mercado, una forma de hacerlo sin tener que lanzar binarios separados es usar PackageManager para ver si Play store es instalado y luego ejecute el intento de Android, si no comprueba si Amazon está instalado, si los dos no están allí, utilice el sitio web o cualquier otra aplicación de "tienda" que conozca. Consulte esto al usar el administrador de paquetes para buscar aplicaciones instaladas http://stackoverflow.com/q/6711295/329034 – mbwasi

Cuestiones relacionadas