Praca z Ustawienia systemu watchOS na platformie Xamarin
Aplikacje Apple Watch mogą używać tej samej funkcji Ustawienia co aplikacje systemu iOS — interfejs użytkownika ustawień jest wyświetlany w aplikacji Apple Watch i Telefon ale wartości są dostępne zarówno w aplikacji i Telefon, jak i w rozszerzeniu zegarka.
Ustawienia będą przechowywane w udostępnionej lokalizacji pliku, która jest dostępna zarówno dla aplikacji systemu iOS, jak i rozszerzenia aplikacji zegarka zdefiniowanej przez grupę aplikacji. Przed dodaniem ustawień należy skonfigurować grupę aplikacji, korzystając z poniższych instrukcji.
Dodawanie Ustawienia w rozwiązaniu do zegarka
W aplikacji i Telefon w rozwiązaniu (a nie aplikacji do obejrzenia lub rozszerzenia):
Kliknij prawym przyciskiem myszy pozycję Dodaj > nowy plik... i wybierz pozycję Ustawienia.bundle (nie można edytować nazwy w oknie dialogowym Nowy plik):
Zmień nazwę na Ustawienia-Watch.bundle (wybierz i wpisz Polecenie + R, aby zmienić nazwę):
Dodaj nowy klucz
ApplicationGroupContainerIdentifier
do pliku Root.plist z wartością ustawioną na skonfigurowaną grupę aplikacji (np.group.com.xamarin.WatchSettings
w przykładzie):Edytuj plik Ustawienia-Watch.bundle/Root.plist, aby zawierał opcje, których chcesz użyć — plik szablonu zawiera grupę. pole tekstowe, przełącznik i suwak domyślnie (które można usunąć i zastąpić własnymi ustawieniami):
Używanie Ustawienia w aplikacji do oglądania
Aby uzyskać dostęp do wartości wybranych przez użytkownika, utwórz NSUserDefaults
wystąpienie przy użyciu grupy aplikacji i określ polecenie NSUserDefaultsType.SuiteName
:
NSUserDefaults shared = new NSUserDefaults(
"group.com.xamarin.WatchSettings",
NSUserDefaultsType.SuiteName);
var isEnabled = shared.BoolForKey ("enabled_preference");
var userName = shared.StringForKey ("name_preference");
Aplikacja Apple Watch
Użytkownicy będą korzystać z ustawień za pośrednictwem nowej aplikacji Apple Watch na urządzeniu i Telefon. Ta aplikacja umożliwia użytkownikowi wyświetlanie/ukrywanie aplikacji na zegarku, a także edytowanie ustawień uwidocznionych przy użyciu pakietu Ustawienia-Watch.bundle.