So che probabilmente si tratta di un longshot, ma esiste un modo per rilevare in modo programmatico se un'app è stata ospitata su Amazon Apps Store vs su Google Play? Vorrei collegare all'app store da cui è stata scaricata l'app, e preferirei non avere due APK diversi con questa differenza se può essere evitato.Rileva se è stata scaricata un'app per Android da Google Play o Amazon vs Other
risposta
partire dal proprio di recente, l'Amazon Appstore restituisce i valori sani di mente per PackageManager.getInstallerPackageName()
PackageManager pm = context.getPackageManager();
String installerPackageName = pm.getInstallerPackageName(context.getPackageName());
if ("com.android.vending".equals(installerPackageName)) {
//do google things
} else if ("com.amazon.venezia".equals(installerPackageName)) {
//do amazon things
}
Vedi qui: https://forums.developer.amazon.com/forums/thread.jspa?threadID=680
Esempi di tasso questo link app:
Google Play -
mercato: // dettagli id = PACKAGANAME
Amazon
o
AMZN: // apps/e roid? p = com.amazon.mp3
Grazie, ci provo! –
Ciao @AlfieHanssen. Devo ancora verificarlo. –
Nota che getInstallerPackageName() potrebbe restituire null se l'app è stata installata utilizzando ADB –
Il modo più semplice è utilizzare codici di versione o nomi diversi tra Amazon e Google Play. Quindi è possibile utilizzare PackageManager.getPackageInfo per recuperare tali valori e scegliere il collegamento dell'app store in modo appropriato da lì.
Esempio: suffisso tutti i nomi di versione di Amazon con '.65', ad esempio, 1.0.65. Quindi utilizzare
public boolean isAmazon(Context context) {
String versionName = "";
try {
versionName = context.getPackageManager().getPackageInfo(
getPackageName(), 0).versionName;
} catch (NameNotFoundException e) {
// Can't find itself...
}
return versionName.endsWith(".65");
}
Grazie. Questo è un modo per farlo, ma sfortunatamente è una modifica in fase di compilazione che non risolve il caso specifico. Potrei anche aggiungere facilmente un tag meta-data al mio manifest, che è probabilmente più pulito a lungo termine, poiché le versioni possono rimanere identiche per entrambi i pacchetti. –
È preferibile utilizzare PackageName anziché VersionName perché è strano aggiungere una lettera a una versione (è più semplice cambiare il nome del bundle). – Idan
Anche Amazon non accetta il nome della versione diverso da x.x.x.x.x dove x è solo numeri interi. Leggilo qui: [Link] (https://developer.amazon.com/public/support/submitting-your-app/tech-docs/submitting-your-app) – ARLabs
- 1. Come sapere se un'app è stata scaricata da Google Play o Amazon?
- 2. Rileva se l'app è stata scaricata da Android Market
- 3. android: Rileva se l'app è stata scaricata dal mercato
- 4. Sviluppo di app Android per Google Play e Amazon Store
- 5. L'app per Android è stata pubblicata, ma non è visibile da nessuna parte in Google Play
- 6. Rileva se l'app iOS è stata scaricata dal Testflight di Apple
- 7. Rileva a livello di codice quale app store l'app è stata scaricata da
- 8. Rileva se un'app è stata disinstallata
- 9. Assicurati che l'applicazione Android sia stata installata da Play-Store
- 10. Emulatore VS per Android: Google Play Store si blocca dopo l'installazione di Gapps (Google Play Services)
- 11. Rileva se è stata ricevuta una chiamata in uscita
- 12. Amazon FPS vs PayPal vs Google Checkout
- 13. Rileva in fase di esecuzione da quale App Store del Paese è stata scaricata la mia app per iPhone?
- 14. Impossibile determinare se il Play Store di Google è installato o meno sul dispositivo Android
- 15. Filtro NDK Android e Google Play
- 16. consumptionState da Google Play API per sviluppatori Android
- 17. Android: Rileva un'altra applicazione è stata avviata la riproduzione audio
- 18. Notifiche push su Android: Google GCM vs Amazon SNS?
- 19. iOS - rileva se l'app è in esecuzione da Xcode
- 20. Rileva se l'applicazione è stata avviata come server HTTP o meno (rake task, rconsole ecc.)
- 21. qr reindirizzamento codice per google play su dispositivo o desktop
- 22. Rileva che un'attività è stata chiusa in Android
- 23. Lasciando inputAccessoryView visibile dopo che la tastiera è stata scaricata
- 24. Scopri perché è stata disinstallata un'app Android
- 25. Programmazione iOS - come scoprire da quale app (del paese) l'app è stata scaricata
- 26. Come sostenere Amazon e Android Market (Google Play) collegamenti nella stessa APK
- 27. Possiamo rimuovere ancora le app non pubblicate da Google Play?
- 28. Ricerca di brani musicali da Google Play Store tramite un'API
- 29. Amazon EC2 vs Amazon EMR
- 30. Come posso sapere se è stata caricata Google Visualization
le app caricate da Amazon ricevono i loro aggiornamenti da lì ...........? –