Podczas korzystania z zaufanej aktywności internetowej w swoich aplikacjach programiści mogą być zmuszeni do przekazywania informacji z natywną część aplikacji w progresywnej aplikacji internetowej (PWA).
Częstym zastosowaniem tego rozwiązania jest implementacja niestandardowych segmentacji analityki w celu pomiaru liczby instalacji. i sesje rozpoczęte za pomocą Zaufanej aktywności internetowej. Do adresu URL uruchamiania można dodać parametry zapytania aby wdrożyć tę funkcję.
Zmiana początkowego URL-a
Czy parametr przekazywany do aplikacji PWA pozostanie taki sam wśród użytkowników można dołączyć go bezpośrednio do adresu URL uruchomienia. Przykładem tego wykorzystania jest gdy deweloperzy chcą mierzyć liczbę sesji nawigacji utworzonych w Zaufanej sieci. Aktywność.
Korzystanie z folii bąbelkowej
Bubblewrap to narzędzie, które pomaga programistom w tworzeniu projektu Aplikacja na Androida uruchamiająca istniejące PWA przy użyciu Trusted Web Aktywność. Zawiera zarówno bibliotekę, jak i interfejs wiersza poleceń (CLI).
Tworzenie nowego projektu
W przypadku używania interfejsu wiersza poleceń Bubblewrap projekt jest inicjowany przy użyciu polecenia init
i tworzy
domyślne wartości z pliku manifestu internetowego, podane jako parametr:
bubblewrap init --manifest https://material.money/manifest.json
Kreator użyje domyślnie parametru start_url z pliku manifestu internetowego i poprosi użytkowników o potwierdzenie Dzięki temu programiści mają możliwość dodania do adresu URL dodatkowych parametrów Progresywna aplikacja internetowa.
Modyfikowanie istniejącego projektu
Gdy Bubblewrap generuje projekt, informacje na temat tego projektu są zapisywane w pliku
twa-manifest.json
w folderze projektu. Aby zmodyfikować URL początkowy istniejącego projektu,
programiści muszą zmodyfikować plik:
{
...
"startUrl": "/?utm_source=trusted-web-activity",
...
}
Następnie ponownie wygeneruj pliki projektu i zastosuj nowy początkowy URL
bubblewrap update
Korzystanie z Android Studio
Jeśli używasz Androida Studio i domyślnego LauncherActivity, adres startUrl jest zdefiniowany jako metatag. w pliku AndroidManifest.xml, możemy zmienić URL używany do uruchamiania zaufanej aktywności internetowej przez jej modyfikację:
<activity android:name="com.google.androidbrowserhelper.trusted.LauncherActivity"
android:label="@string/app_name">
...
<meta-data android:name="android.support.customtabs.trusted.DEFAULT_URL"
android:value="https://svgomg.firebaseapp.com/?utm_source=trusted-web-activity" />
...
</activity>
Dynamiczna zmiana początkowego adresu URL
Programiści mogą też tworzyć parametry, które zmieniają się w zależności od użytkowników lub sesji, instancji. W większości przypadków będzie to zbieranie informacji od strony Androida i przekazania jej do progresywnej aplikacji internetowej.
Krok 1. Utwórz niestandardową aktywność LauncherActivity
public class CustomQueryStringLauncherActivity extends LauncherActivity {
private String getDynamicParameterValue() {
return String.valueOf((int)(Math.random() * 1000));
}
@Override
protected Uri getLaunchingUrl() {
// Get the original launch Url.
Uri uri = super.getLaunchingUrl();
// Get the value we want to use for the parameter value
String customParameterValue = getDynamicParameterValue();
// Append the extra parameter to the launch Url
return uri
.buildUpon()
.appendQueryParameter("my_parameter", customParameterValue)
.build();
}
}
Krok 2. Zmień AndroidManifest.xml
, aby używał niestandardowej aktywności LauncherActivity
<activity android:name="com.myapp.CustomQueryStringLauncherActivity"
android:label="@string/app_name">
...
<meta-data android:name="android.support.customtabs.trusted.DEFAULT_URL"
android:value="https://squoosh.app/?utm_source=trusted-web-activity" />
...
</activity>
Podsumowanie
Przekazywanie informacji z natywnej części aplikacji do internetowej części aplikacji można uzyskać za pomocą parametrów zapytania. Po dodaniu parametru do ciągu zapytania będzie on dostępny dla skryptów działają na stronie i może być również częścią odesłania, gdy użytkownicy przejdą na inną stronę lub zaimplementuje działanie związane z udostępnianiem.
Deweloperzy muszą wiedzieć o tych konsekwencjach i móc im zniwelować wpływ za pomocą link rel=noreferrer lub oczyścić adres URL za pomocą interfejsu API lokalizacji strony.
Protokół Zaufanej aktywności internetowej nie zapewnia obecnie mechanizmu wymiany wiadomości z natywną część aplikacji po wywołaniu komponentu internetowego.
Wierzymy, że istniejące lub nadchodzące interfejsy API platformy Web Platform umożliwią deweloperom większość przypadków użycia. Jeśli szukasz nowych lub nadchodzących interfejsów API, zajrzyj na stronę stanu nowych funkcji.