Istnieje sposób, aby to osiągnąć.
Nie można wykryć, czy dana aplikacja jest zainstalowana, ze względów bezpieczeństwa i prywatności. Ale możesz zrobić lewę, aby otworzyć aplikację, jeśli jest zainstalowana lub otworzyć jej stronę Google Play, jeśli tak nie jest.
Aby to zrobić, należy utworzyć filtr zamiaru w głównej działalności aplikacji, aby otworzyć go po wywołaniu danego adresu URL. Tak:
<activity android:name=".MainActivity >
<intent-filter>
<data
android:host="www.myurl.com"
android:pathPrefix="/openmyapp"
android:scheme="http" >
</data>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Wyjaśniając: gdy użytkownik nawiguje do http://www.myurl.com/openmyapp, jeśli jest zainstalowana aplikacja, istnienie zamiaru zostanie utworzony i aktywny zostaną pokazane.
Ale co, jeśli użytkownik nie ma zainstalowanej aplikacji? Następnie musisz utworzyć stronę przekierowania na swoim http://www.myurl.com/openmyapp/index.html. Gdy użytkownik dotrze do tego adresu, twój serwer musi przekierować do market://details?id=com.your.app.package
.
W ten sposób, gdy po przejściu użytkownika do http://www.myurl.com/openmyapp nie zostanie utworzone żadne intencje, serwer internetowy wywoła inny adres URL. Z kolei ten URL otworzy Google Play na urządzeniu bezpośrednio na stronie aplikacji.
Mam nadzieję, że to pomaga.
Tak, mam na myśli z Javascript. –
@Thomas naprawdę nie ma sposobu, aby dowiedzieć się, czy aplikacja jest zainstalowana? Na przykład piszę własną stronę internetową i piszę własną aplikację, teraz chcę, gdy użytkownik wejdzie na moją stronę z telefonu Android Browser, wygląd przeglądarki, jeśli aplikacja jest zainstalowana w telefonie, a jeśli nie zaproponuje instalacji aplikacji. Czy mogę to zrobić ? –
Wpisałem to w główne pytanie, ponieważ jest to bardzo ważne. – Thomas