Podstawy aplikacji

Pierwsza fala na Googlebooku z Notability i Logitech

Głośniki

  • Emilie Roberts

    Inżynier ds. relacji z deweloperami

  • Ryan Shea

    Dyrektor ds. Androida

  • Joe Yezhou Wang

    Menedżer ds. inżynierii w firmie Logitech

Informacje

Informacje o wystąpieniu

Wprowadzenie Googlebooka otwiera nowe możliwości w zakresie wysokiej jakości gier na komputery. Podczas tej sesji zajrzymy za kulisy z 2 pionierskimi partnerami, którzy stworzyli aplikacje na tę platformę od podstaw.

Notability opowie o swojej drodze do stworzenia aplikacji na Androida klasy komputerowej przy użyciu Jetpack Compose. Dowiedz się, jak wyglądało ich przejście z innych platform aplikacji, gdy ich głównym celem były komputery. Następnie przedstawiciel firmy Logitech omówi kwestie sprzętowe, w tym sposób tworzenia i dostosowywania urządzeń peryferyjnych, aby bezproblemowo integrowały się z Googlebookiem. Dołącz do sesji, aby uzyskać praktyczne, rzeczywiste informacje na temat optymalizacji danych wejściowych, wykorzystania interfejsów API na dużych ekranach oraz zapewniania użytkownikom spójnych wrażeń na różnych urządzeniach i w różnych programach.

Podsumowanie

  • Jetpack Compose i Nawigacja 3 ułatwiają dostosowywanie układów na różnych urządzeniach na podstawie dostępnego rozmiaru okna, a nie formatu urządzenia.
  • Funkcje klasy komputerowej wymagają obsługi modeli z wieloma urządzeniami wejściowymi, takimi jak klawiatury i trackpady. Funkcje takie jak Kontynuuj na Androidzie 17 umożliwiają też użytkownikom przekazywanie zadań między urządzeniami.
  • Jetpack Ink zapewnia deweloperom potok rysowania o niskim opóźnieniu bez konieczności zarządzania renderowaniem niestandardowym ani złożonymi przekazywaniami warstw.
  • Interfejs Peripheral Customization API na liście dozwolonych umożliwia deweloperom mapowanie aktywatorów sprzętu peryferyjnego na działania systemu operacyjnego za pomocą identyfikatorów dostawcy i produktu.

Gemini Notebook

Tematy

  • googlebook
  • jetpack-compose
  • jetpack-ink
  • navigation-3
  • large-screens
  • peripheral-customization
  • kotlin-multiplatform

Transkrypcja

Pobierz transkrypcję

Wprowadzenie do tworzenia aplikacji na Googlebooka

  • Cześć, nazywam się Emilie Roberts i jestem przedstawicielką ds. kontaktu z deweloperami. Od około 9 lat pracuję z aplikacjami na Androida na laptopach.

  • I wprowadziliśmy na rynek Googlebooka.

  • Hura!

  • Myślę, że innowacje, które wprowadzamy w przestrzeni laptopów, są naprawdę świetne.

  • Cieszę się, że mogę być na scenie z dwoma deweloperami, którzy naprawdę zainwestowali w to, aby ich aplikacje wyglądały świetnie na Googlebooku.

  • Cześć.

  • Nazywam się Ryan i pracuję w Notability.

  • Jestem menedżerem ds. Androida, a to aplikacja do cyfrowego notatnika, którą właśnie wprowadziliśmy na Androidzie.

  • Jest też dostępna na iOS, komputerach, a teraz także w Książkach Google.

  • Cześć.

  • Nazywam się Joe i pracuję w firmie Logitech, która jest znana ze świetnego sprzętu i urządzeń peryferyjnych.

  • Opowiem też o tym, jak przenieśliśmy je na nowe platformy.

Projektowanie aplikacji na Androida na duże ekrany

  • Przesunę je.

  • Dlatego wprowadzamy Googlebooki.

  • Hura!

  • Hura!

  • Hura!

  • Mam nadzieję, że udało się Wam je przetestować samodzielnie lub na stoisku demonstracyjnym piętro wyżej lub niżej.

  • Nie zapomnij też sprawdzić, jak Twoja aplikacja wygląda na tych urządzeniach.

  • I'm going to give my standard spiel, which is the Android ecosystem is growing.

  • Mówię to od 9 lat i nadal jest to prawda.

  • Aplikacje muszą się rozwijać, aby spełniać potrzeby użytkowników na wszystkich tych urządzeniach i rozmiarach ekranów.

  • Układ aplikacji, który działa i zachowuje się prawidłowo, jest obecnie standardem.

  • Najlepszym sposobem na to jest użycie Jetpack Compose i Nawigacji 3.

  • A dane wejściowe to to samo.

  • Powinno to działać bez problemu.

  • Oczywiście architektura aplikacji i zarządzanie stanem są częścią układu i danych wejściowych.

  • Na ADS mamy wiele prelekcji o tym, jak to zrobić, korzystając z najnowszych narzędzi i sprawdzonych metod.

  • Jednak dzisiaj pomyśleliśmy, że byłaby to świetna okazja, aby zrobić trochę miejsca dla deweloperów, którzy od samego początku tworzą aplikacje na Googlebooka, i wysłuchać ich historii.

  • Notability to zaawansowana aplikacja do robienia notatek, stworzona od podstaw z myślą o Googlebooku.

  • Logitech zadbał nie tylko o to, aby klawiatury, myszy i inne urządzenia peryferyjne działały, ale też o to, aby działały bardzo dobrze na Chromebookach, w tym z uwzględnieniem personalizacji użytkownika.

  • Przepraszam, że wchodzę Ci w paradę, Joe, ale przejdźmy do szczegółów.

  • To mi wystarczy.

  • Tym razem nie będzie rapu.

  • I na pewno nie będzie już żadnych improwizacji.

  • W każdym razie bardzo się cieszymy, że aplikacja Notability jest dostępna na Googlebookach. Przekazuję głos Ryanowi.

  • Dziękujemy.

Wprowadzanie aplikacji Notability na Androida

  • Świetnie.

  • Dziękuję bardzo, Em.

  • Bardzo się cieszymy, że możemy korzystać z Googlebooków.

  • Notability to aplikacja, z której korzystają miliony uczniów i profesjonalistów do robienia notatek.

  • Jak już wspominałem, jest ona teraz dostępna na Androidzie. Opowiem krótko o tym, jak ją stworzyliśmy i jak tworzenie aplikacji na Androida pozwala od razu uzyskać optymalne działanie na Googlebookach.

  • Gdy około 2 lata temu zaczęliśmy pracować nad tym projektem, chcieliśmy mieć pewność, że nie tylko przeniesiemy naszą aplikację na iOS i udostępnimy ją użytkownikom, ale że będzie ona wystarczająco dobra.

  • Chcieliśmy stworzyć coś, co będzie odpowiadać oczekiwaniom użytkowników, ale jednocześnie będzie oferować pełną funkcjonalność.

  • Aby to osiągnąć, użyliśmy Material Design i komponentów, aby dostosować wszystkie ekrany od podstaw.

  • Zadbaliśmy też o to, aby korzystać z Jetpack Compose.

  • Dzięki temu, że jest to natywna aplikacja na Androida w pełni oparta na Jetpack Compose, możemy obsługiwać pełną gamę sprzętu – nie tylko małe telefony i urządzenia niższej klasy, ale też wysokiej klasy, wydajne tablety z dużymi ekranami, komputery, XR, samochody i wszystko inne.

  • Jetpack Compose ułatwia ich obsługę natywną, bez konieczności tworzenia wielu dodatkowych funkcji w interfejsach użytkownika.

  • Przejdźmy do Notability.

  • Wszystko w Notability jest oparte na Jetpack Compose.

  • Interfejs jest spójny na całej platformie i jest tworzony w zasadzie raz, bez istotnych zmian między tym, co jest wyświetlane na telefonie, a tym, co jest ostatecznie wyświetlane na większych urządzeniach, takich jak tablety i Googlebooki.

  • W tym celu Navigation 3 jest dla nas ogromnym ułatwieniem.

  • Nawigacja 3 w aplikacji Notability z wbudowanymi usługami Google działa w taki sposób, że na podstawie rozmiaru ekranu możemy dostosować układ, nie martwiąc się o to, jak funkcja będzie prezentowana.

  • W tej wersji demonstracyjnej możesz zobaczyć, że jeśli jest miejsce na otwarcie panelu bocznego, zostanie on otwarty.

  • Jeśli jednak nie, pojawi się jako plansza dolna.

  • Jak to wygląda w kodzie?

  • W kodzie, który tu widzimy, jest jeden punkt wejścia dla panelu podsumowania z boku, który dodajemy do stosu wstecznego.

  • Następnie nasza strategia niestandardowych scen wybiera układ panelu bocznego w zależności od tego, czy jest na niego miejsce.

  • Na tablecie lub urządzeniu Googlebook znajdzie dostępne miejsce i po prostu wysunie panel z prawej strony.

  • Jednak na telefonie lub urządzeniu składanym może nie być wystarczająco dużo miejsca, aby prawidłowo wyświetlić ten panel, więc pojawi się on jako plansza dolna.

  • Notability dostosowuje się do rozmiaru okna, a nie do typu urządzenia, niezależnie od tego, czy jest to telefon, Googlebook, tablet czy urządzenie składane. Dzięki temu nasz interfejs może łatwo i automatycznie dostosowywać się do potrzeb użytkowników.

  • Na telefonie wszystkie przyciski i narzędzia są rozmieszczone tak, aby były łatwo dostępne dla kciuka.

  • Na tablecie panele nawigacyjne wyświetlają się obok głównych treści, ponieważ jest więcej miejsca i łatwiej jest korzystać z ekranu.

  • W przypadku urządzeń składanych wykorzystujemy zgięcie, aby oferować unikalne układy i interfejsy, np. w quizie, gdzie użytkownicy mogą mieć odpowiedzi w dolnej połowie, a postępy w quizie w górnej.

  • Na koniec: na Googlebookach można płynnie zmieniać rozmiar okna.

  • Podobnie jak w przypadku innych aplikacji okienkowych na komputerze, Notability dostosowuje się do rozmiaru okna, aby umożliwić pracę w trybie obok siebie.

  • Podczas tworzenia Adaptive UI, który, jak wspomniałem, działa w przypadku niemal wszystkich funkcji Googlebooka na komputerze.

  • To bardzo zbliży Cię do celu.

  • Jeśli jednak chcesz uzyskać wrażenia jak na komputerze, coś naprawdę niesamowitego, zalecamy wykonanie kilku czynności.

  • Po pierwsze, klawiatura jest najważniejsza.

  • Użytkownicy nie będą tak często korzystać z ekranu dotykowego jak na zwykłym tablecie czy telefonie, dlatego skróty klawiszowe i łatwy dostęp do listy skrótów na Androidzie są bardzo ważne.

  • Następnie możesz zaprojektować funkcje tak, aby ich układ różnił się w zależności od typu urządzenia i dostępnych urządzeń peryferyjnych.

  • Gdy wykryjemy na przykład laptopa z podłączoną klawiaturą lub myszą, na ekranie głównym wyświetlamy nieco inny interfejs, aby przekierować użytkowników do narzędzi, które naszym zdaniem będą dla nich bardziej odpowiednie niż te przeznaczone na tablety, gdzie główną opcją jest rysik i automatyczne odręczne notatki.

  • Kolejną rzeczą, o której warto pomyśleć, jest interakcja między różnymi urządzeniami.

  • Kontynuuj to nowa funkcja w Androidzie 17, która umożliwia płynne przenoszenie aplikacji z jednego urządzenia na drugie.

  • W tym przykładzie przenosimy notatkę z telefonu na większe urządzenie, czyli komputer.

  • Można to łatwo zrobić, szybko synchronizując identyfikator zgłoszenia i sprawdzając, na jakim etapie jest sprawa po naszej stronie.

  • Dzięki temu możemy łatwo wysłać do urządzenia Googlebook szybką intencję aplikacji, a następnie kontynuować dokładnie od miejsca, w którym przerwaliśmy.

  • Kolejną kwestią, którą należy wziąć pod uwagę w przypadku urządzeń klasy komputera, są modele obsługi wielu urządzeń wejściowych.

  • Oprócz wspomnianych wcześniej skrótów klawiszowych będziesz mieć do dyspozycji trackpady z różnymi rodzajami powiększenia i zachowaniami przewijania, których wcześniej nie było.

  • Będziesz też mieć menu kontekstowe, które mogą wymagać udostępnienia użytkownikom, którzy wcześniej nie mieli do nich dostępu.

  • Dodatkowo, ponieważ wiele urządzeń Googlebook nadal ma ekrany dotykowe, musisz zadbać o to, aby podczas interakcji użytkownika z urządzeniem rozpoznawane były różne metody wprowadzania danych – nie tylko rysik i palec, ale też kursor trackpada, ponieważ wszystkie te 3 metody powinny być traktowane inaczej.

Rysowanie z małym opóźnieniem za pomocą Jetpack Ink

  • Jeśli interesuje Cię pisanie odręczne i tworzenie notatek, jak w aplikacji Notability, zalecamy użycie Jetpack Ink.

  • Dzięki temu możemy zapewnić system tworzenia cyfrowego atramentu o niskim opóźnieniu bez konieczności zarządzania dużym, skomplikowanym stosem wątków, renderowania, czytników buforów i innych elementów, które pokażę później.

  • Jeśli wszystko zadziała, dzięki Logitech będę mógł pokazać Wam wersję demonstracyjną aplikacji Notability na żywo.

  • Tak, świetnie.

  • No, dalej.

  • I o to chodzi.

  • Oto mój wcześniejszy test.

  • Jak widać, używam palca, więc rozpoznaje on wprowadzanie danych palcem, co jest świetne.

  • Mogę też używać myszy, jeśli chcę.

  • Udało nam się jednak stworzyć kilka niestandardowych pędzli dostępnych tylko na Androidzie.

  • Jak widać, mam wybrany efekt tęczy i brokatu, więc na nasze efekty wprowadzania lub atramentu będzie wpływać biblioteka Jetpack Ink.

  • Napiszę więc moją wiadomość jeszcze raz.

  • Cześć.

  • Na koniec wybierzmy zielony kolor Androida.

  • Trudno jest dotknąć właściwego miejsca.

  • I o to chodzi. Zielony Android.

  • Możemy też zobaczyć, że rzeczywiste kolory zmieniają się w zależności od tego, jaki kolor jest ustawiony jako model podstawowy.

  • Świetnie.

  • W przeszłości stworzenie takich pędzli zajmowało nam miesiące, ponieważ musieliśmy zadbać o to, aby wszystkie niestandardowe shadery, interfejs i inne elementy działały prawidłowo i dobrze wyglądały.

  • Dzięki Jetpack Ink, sztucznej inteligencji i niestandardowemu kreatorowi pędzli może to zająć mniej niż tydzień.

  • Jeśli więc szukasz jakiegoś tatuażu, daj im znać.

  • To świetny interfejs API, który pozwolił nam zaoszczędzić mnóstwo czasu.

  • Świetnie.

  • Jak już wspominałam, wygląda to mniej więcej tak.

  • Mamy więc tzw. warstwę mokrego tuszu.

  • To jest nasz atrament, który jest w trakcie rysowania, nadal jest rysowany, musi być bardzo, bardzo czuły, w porównaniu z suchą warstwą atramentu.

  • Ma to sens w przypadku rzeczy fizycznych.

  • To jest zapisany rysunek, który został już ukończony.

  • Wcześniej przekazywanie informacji było całkowicie po naszej stronie.

  • Musieliśmy więc wykonać to wątkowanie, musieliśmy przerysować i wyczyścić, musieliśmy przekazać to do warstwy suchej i upewnić się, że te elementy są zsynchronizowane i nie migoczą. Było wiele komplikacji.

  • Na koniec musieliśmy zastosować to, co stanowi o wyjątkowości Notability.

  • Mamy własne modele dopasowywania krzywych i sposoby, dzięki którym pismo odręczne naprawdę się wyróżnia.

  • To był stary model.

  • Dzięki Jetpack Ink wystarczy, że wprowadzimy dopasowanie krzywej do widoku niestandardowych kształtów postępu, a wszystko od razu działa na Androidzie.

  • Inną kwestią, którą bierzemy pod uwagę, gdy omawiamy zarówno Jetpack Ink, jak i inne biblioteki Google, jest KMP.

  • Zaczęliśmy od analizy kodu na iOS, który był już gotowy, i pomyśleliśmy: „Chcielibyśmy udostępnić część logiki między Androidem a iOS.

  • Mamy modele, zmiany i skomplikowane obliczenia.

  • To zrozumiałe, że chcemy się dzielić”.

  • Pomyśleliśmy: „Hej, C++, Objective-C Apple, pójdźmy tą drogą”.

  • Okazało się, że Kotlin Multiplatform jest nie tylko łatwiejszy do wdrożenia dla naszych inżynierów iOS, ale też szybszy.

  • Dzięki Kotlinowi nie tylko uzyskaliśmy lepszą wydajność i mogliśmy skopiować dużą część kodu Androida, ale też w dłuższej perspektywie ułatwiliśmy sobie pracę nad wersją na iOS.

  • Jeśli więc chcesz udostępniać kod, zalecam zapoznanie się z Kotlin Multiplatform.

  • Obecnie nadal ją sprawdzamy.

  • Nie jest to jeszcze w 100% obsługiwane, ponieważ różne modele AI ułatwiają teraz oszukiwanie, gdy kod znajduje się w wielu miejscach, ale nadal aktywnie to badamy i bardzo wysoko oceniamy.

  • OK, teraz czas na coś wyjątkowego, co jest dostępne tylko w Notability.

  • Jeśli kiedykolwiek spróbujesz utworzyć działający edytor tekstu na Androida, zauważysz, że obecnie nie ma dobrego sposobu na utworzenie edytora tekstu do dużych dokumentów.

  • Podstawowe pola do wprowadzania danych w Androidzie to mniejsze elementy interfejsu, takie jak EditText, i krótkie formularze.

  • W rezultacie musieliśmy stworzyć bardzo skomplikowany system, który w zasadzie działa na bazie istniejących interfejsów API Androida, ale jest w stanie obsługiwać znacznie większe dokumenty, czyli tysiące stron tekstu, które można jednocześnie edytować. Możesz więc mieć użytkownika, który edytuje dokument 500 stron dalej, co powoduje zmiany, które wpływają na Twoją pracę.

  • Odkryliśmy, że naciśnięcia klawiszy podążają 2 ścieżkami.

  • Pierwsza ścieżka to: „To jest nasza najlepsza próba, ten klucz powinien pojawić się tutaj”.

  • Uważamy, że to dobry wynik, biorąc pod uwagę wszystkie informacje, które możemy obecnie uzyskać na podstawie danych.

  • A potem szybko synchronizujemy, prawda?

  • Sprawdzamy zaplecze, kontaktujemy się ze współpracownikami i pytamy: „Hej, czy wszystko jest w porządku?

  • Czy to ma sens?

  • Czy wszystko jest w porządku?”.

  • Jeśli coś się zmieni, dostosowuje się do nowej sytuacji.

  • Jeśli 2 użytkowników korzysta z tej samej linii i naciska klawisze, może dojść do pomyłki.

  • Jednak w większości przypadków działa to bardzo dobrze.

  • Wspominam o tym, ponieważ włożyliśmy w to ogrom pracy i rozważamy udostępnienie tego rozwiązania jako open source.

  • Jeśli ktoś na tej konferencji lub w przyszłości online chciałby współpracować nad tym projektem i uważa, że to dobry pomysł, niech da nam znać.

  • Zastanawiamy się, czy naprawdę warto w to inwestować, ale było to dla nas ogromne przedsięwzięcie i jesteśmy dumni z wyników.

  • A tak działa atrament.

  • Jeśli chodzi o model współpracy, jest to nieco bardziej bezpośredni sposób działania z naszej strony.

  • Jak widać, są 3 kroki.

  • Jest to moment, w którym mówimy: „Hej, przy okazji, rozpoczynamy zdarzenie rysowania” do dowolnego z naszych połączonych urządzeń, w tym przypadku iPada.

  • Następnie jest rzeczywisty rysunek, więc może być ich od jednego do milionów, w zależności od tego, jak długo użytkownik trzyma urządzenie, czyli rysik.

  • Miejmy nadzieję, że nie za długo.

  • Myślę, że w pewnym momencie osiągniemy limit, ale w przypadku normalnych zastosowań jest to całkiem dobre rozwiązanie.

  • Jest też wydarzenie podnoszące na duchu.

  • Zarządzamy tym, przechowując w modelu obiekt przejściowy.

  • Oznacza to, że na iPadzie mówimy: „OK, nadchodzi udar, ale jeszcze go nie ma.

  • Nie możemy z nim wchodzić w interakcje.

  • To ulotne”.

  • Dopiero gdy zostanie uruchomione zdarzenie zakończenia, możemy powiedzieć: „OK, super.

  • Teraz zastąp całość jednym obiektem, który iOS lub inne klienty mogą po prostu pobrać i z nim wejść w interakcję”.

  • Rozważamy też udostępnienie tego rozwiązania jako open source.

  • To nie jest nasze bezpośrednie pismo odręczne, ale niektóre elementy tymczasowe, zwłaszcza w warstwie tekstowej.

  • Świetnie.

  • And then, yeah.

  • Oto kilka innych rzeczy, które zalecamy.

  • AI na urządzeniu to świetne rozwiązanie.

  • Używamy go do skanowania dokumentów, dzięki czemu można skanować dokumenty, analizować teksty w plikach PDF i rozpoznawać pismo odręczne.

  • Korzystamy też z otwartych modeli AI w chmurze, takich jak Gemini, które pomagają nam generować inteligentne notatki. Notatki użytkowników są kategoryzowane, podsumowywane, a następnie przekazywane im z powrotem w sposób, który jest lepszy i bardziej interaktywny dla modelu uczenia się.

  • Wszystko to sprawia, że Notability sprawia wrażenie aplikacji na laptopa, prawda?

  • To jest ostateczny cel.

  • Mamy te wszystkie ciekawe modele, różne rzeczy, tekst, dane wejściowe, ale najważniejsze jest to, czy to wygląda jak aplikacja na laptopa, czy jak aplikacja na telefon, którą otworzyłeś na dużym ekranie i którą się bawisz?

  • Klawiatura, trackpad, rysik, zmiana rozmiaru okna – wszystkie te kluczowe funkcje muszą działać prawidłowo, aby użytkownicy byli zadowoleni.

  • Ale jak już wspomniałem, Jetpack Compose, Navigation 3, Material Design – wszystkie te narzędzia to obejmują.

  • Jeśli więc zrobisz to dobrze, nie będzie to wymagało dużego wysiłku.

  • Łatwo tu dotrzeć.

  • No więc tak.

  • To najważniejsze informacje.

  • Myśląc o przyszłości Androida, nie skupiałbym się już na urządzeniach.

  • Nie myśl o tym, czy to telefon, urządzenie składane, urządzenie z XR, komputer stacjonarny, laptop, tablet, samochód czy telewizor.

  • Zamiast tego trzeba się zastanowić, jaki rozmiar ekranu jest dostępny i jakie są dostępne dla użytkowników modalne okna wprowadzania danych.

  • Zapewnijmy jak najlepsze wrażenia tym, którzy będą korzystać z tej funkcji w przyszłości.

  • Jak już wspominałem na poprzednim slajdzie, Compose i Nav 3 naprawdę ułatwiają obsługę tych wszystkich funkcji.

  • Google codziennie wprowadza nowe, bardzo zaawansowane interfejsy API, takie jak Jetpack Ink czy Gemini na urządzeniu, które ułatwiają tworzenie podstawowych funkcji i pozwalają skupić się na tym, co czyni aplikację wyjątkową.

  • OK.

  • No więc tak.

  • Bardzo dziękuję.

  • To jest moja prezentacja.

  • Jeśli masz pytania, będę dostępny później. Możesz też skontaktować się z Notability.

  • Aplikacja jest dostępna na Androidzie od około 2 miesięcy.

  • Wreszcie wyszliśmy z wersji beta.

  • Możesz więc wypróbować tę funkcję.

  • Prześlij nam opinię.

  • Jest on też dostępny w Googlebooks w procesie demonstracyjnym.

  • A teraz przekażę głos Joe z Logitech.

  • Dziękujemy.

Wprowadzanie Logitech Options+ na Googlebooka

  • OK.

  • Dzięki, Ryan.

  • Today, Okay, sorry.

  • Przejdźmy do slajdu.

  • Dzięki, Ryan.

  • Dzisiaj opowiem o tym, jak wprowadziliśmy na Chromebooki aplikację Options+, która służy do dostosowywania urządzeń peryferyjnych.

  • Co oznacza tworzenie funkcji peryferyjnych?

  • Omówię to, co stworzyliśmy, kilka najważniejszych aspektów technicznych i nasze plany na przyszłość.

  • Urządzenia Logitech działały już wcześniej z Androidem, a większość użytkowników uważała, że urządzenia peryferyjne poprawiają dostępność, zwłaszcza w przypadku laptopów klasy premium i telefonów podłączonych do zewnętrznych monitorów.

  • A propos, wcześniej na dole, na stoisku demonstracyjnym Googlebooka, widziałem, że do stołu przymocowano sekwencyjną skrzynię biegów Logitech, której używano do przełączania się między różnymi ekranami na tablecie.

  • Gotowe.

  • To jeden ze sposobów korzystania z tej funkcji.

  • Aha, przy okazji, Ferrari musiało doliczyć dodatkowe 50 000 euro za sekwen… Nieważne.

  • Tak.

  • Jak wspomniał Ryan, na Googlebooku mamy znacznie więcej miejsca do pracy.

  • Jak widać, możesz zmieniać rozmiar ekranów, orientację poziomą, pionową lub kwadratową, jeśli chcesz, i masz o wiele więcej miejsca do pracy między aplikacjami.

  • Możesz kontynuować pracę, korzystać z różnych aplikacji, zmieniać kontekst i robić inne rzeczy.

  • To z pewnością zmieniło projektowanie aplikacji, a układy muszą być przydatne podczas całego procesu.

  • Dla nas, czyli firmy Logitech, jest to szczególnie interesujące, ponieważ mamy duże doświadczenie w zakresie urządzeń peryferyjnych.

  • Mamy bardzo solidne podstawy do tej pracy.

  • Z naszego punktu widzenia w takim środowisku pracy użytkownik korzysta z myszy lub klawiatury przez cały dzień.

  • Mogą bardzo płynnie wejść w proces pracy.

  • Nie będzie przesadą, jeśli powiem, że Logitech wnosi do tej współpracy dziesięciolecia doświadczenia.

  • Na początku tego miesiąca obchodziliśmy 45 rocznicę.

  • Myślę, że produkujemy myszy od drugiego dnia drugiego roku istnienia firmy Logitech.

  • Dzięki temu doświadczeniu jesteśmy pewni, że możemy wejść na ten obszar.

  • Co więcej, mamy duże doświadczenie z ChromeOS.

  • W przeszłości gwarantowaliśmy najwyższą zgodność z ChromeOS.

  • Mamy już duże doświadczenie praktyczne w przełamywaniu barier między sprzętem, który tworzymy, oprogramowaniem, które rozwijamy, i platformą, czyli systemem operacyjnym Googlebook.

  • Przykładem może być prosta sytuacja, w której użytkownik naciska przycisk i widzi przewidywalne wyniki.

  • To prawie tak, jakbyście wszyscy brali to za pewnik.

  • ale wymagają bezproblemowej zgodności komponentów.

  • Ponadto wszyscy lubią, gdy ich urządzenia peryferyjne są zgodne.

  • Na przykład odpowiednie dostosowanie ich czułości.

  • 65 – ani więcej, ani mniej.

  • Wszystkie te elementy wymagają bardzo dobrej, płynnej integracji i zgodności.

  • Wraz z wprowadzeniem na rynek Googlebooków udostępniamy też aplikację Options+ na te urządzenia.

  • Obecnie obsługujemy szereg myszy i klawiatur, a w przyszłości będzie ich jeszcze więcej.

  • W tym miejscu użytkownik może też skonfigurować swoje urządzenia.

  • Jak już wspomniałam, chodzi o takie kwestie jak wrażliwość.

  • Teraz robi się ciekawie.

  • Gdy mówimy o możliwościach konfiguracji, mamy na myśli 2 aspekty.

  • Jedna strona to sprzęt i oprogramowanie układowe, w którym implementujemy funkcje.

  • Druga strona, czyli system operacyjny, jest kluczowym elementem tej prezentacji.

  • Myślę, że wszyscy tutaj wiedzą, że w przeszłości urządzenia z Androidem i większość aplikacji działały we własnych piaskownicach, czyli przestrzeniach użytkownika.

  • Istnieją pewne ograniczenia dotyczące tego, co możesz zrobić, a w wielu przypadkach tego, czego nie możesz zrobić i co chcesz zrobić.

  • Dla nas jest to niezwykle ważne.

  • Oto zrzut ekranu. Później pokażemy wersję demonstracyjną, ale na razie zrzut ekranu.

  • Mamy tu mysz MX Master 4 z wieloma funkcjami.

  • Osoby, które znają świat urządzeń peryferyjnych, mogą rozpoznać, że niektóre funkcje są bardzo podobne do funkcji oprogramowania układowego i urządzeń.

  • a inne nie.

  • Staramy się umożliwić użytkownikom skonfigurowanie obu stron.

  • Naszym zadaniem jest przede wszystkim sprawić, aby te opcje były zrozumiałe, i zapewnić użytkownikom pełne możliwości, a także prawidłowo skonfigurować te elementy pod kątem systemu operacyjnego i oprogramowania układowego.

  • Teraz przejdźmy do krótkiej prezentacji.

  • To była bardzo imponująca prezentacja.

  • Ale następnym razem, Ryan, użyj myszy.

Prezentacja na żywo Options+

  • No dobrze, zaczynamy.

  • Oto ekran mojego urządzenia.

  • Jak widzisz, mam tu mysz MX Master 4.

  • Zróbmy to.

  • Przejdziemy od razu do ekranu konfiguracji, który widzieliście wcześniej. To tutaj dzieje się magia.

  • Najpierw przypiszmy funkcję „Zaznacz, aby wyszukać” do przycisku kciuka.

  • Następnie umieśćmy magiczny wskaźnik w przycisku funkcji.

  • Zaczynamy.

  • Otwórzmy przeglądarkę.

  • Jak tam dotrzeć.

  • Naciskam przycisk kciuka, do którego właśnie przypisałem funkcję „Zaznacz, aby wyszukać”.

  • Jak widzisz, zakreślam klawiaturę.

  • Gotowe.

  • Google wyświetla tylko informacje o tej klawiaturze.

  • Jest bardzo poręczny i działa płynnie.

  • Teraz spróbujmy czegoś innego.

  • O, przepraszam.

  • Wróćmy do poprzedniego tematu.

  • Wypróbujmy magiczny wskaźnik.

  • Przełączmy to.

  • Mogę nacisnąć przycisk funkcji, otagować to i nacisnąć „Co to za urządzenie?”.

  • I gotowe.

  • Google rozpocznie wyszukiwanie i wyświetli wyniki.

  • So, the nice thing about this is that you integrate entire workflow into just one hand operation.

  • Przypisujesz funkcje, naciskasz, zaznaczasz, klikasz i gotowe.

  • Uważamy, że tego rodzaju operacja znacznie poprawi dostępność i sposób pracy użytkowników.

  • Wróćmy teraz do slajdów.

Omówienie interfejsu API dostosowywania urządzeń peryferyjnych

  • Możesz się więc zastanawiać, co spowodowało tę zmianę.

  • Ponieważ wielu rzeczy w przeszłości nie można było zrobić za pomocą aplikacji.

  • Oto interfejs Peripheral Customization API, który jest dostępny zarówno na Chromebookach, jak i na urządzeniach z Androidem.

  • Oto jednak uwagi od Google.

  • Obecnie ten interfejs API jest dostępny tylko dla użytkowników z listy dozwolonych.

  • Planujemy jednak udostępnić ją wraz z aktualizacjami Androida w IV kwartale 2026 r., czyli w tym kwartale.

  • Myślę, że po udostępnieniu tej funkcji będą mogli z niej korzystać deweloperzy na całym świecie.

  • Przejdźmy teraz do kwestii technicznych.

  • Są 3 główne elementy: urządzenie, aktywator, którym może być klawisz lub przycisk, oraz działanie po stronie systemu operacyjnego aplikacji.

  • Przyjrzyjmy się teraz temu fragmentowi kodu.

  • Na samej górze definiujemy urządzenie, używając jego identyfikatora dostawcy i identyfikatora produktu.

    // Vendor and product Information
    const val VENDOR_ID = 1234
    val pid = 123
    
    // Use the mouse Middle Button as the trigger
    val trigger = ButtonCustomizationTrigger(MotionEvent.BUTTON_TERTIARY)
    
    // Set Voice Assistant as the action
    val actionBuilder = AppCustomizationAction.Builder(component, ACTION_MAIN)
    actionBuilder.setData(ActionId.ACTION_VOICE_ASSIST.actionId) // Action IDs are predefined
    val action = actionBuilder.build()
    
    val im = context.getSystemService(INPUT_SERVICE) as InputManager
    im.addPeripheralCustomization(VENDOR_ID, pid, trigger, action)
  • Zwykle nazywamy je VID i PID.

  • Przechodząc dalej, zaczynamy definiować wyzwalacz.

  • Jak widać, chcemy użyć środkowego przycisku jako aktywatora.

  • W tym przypadku chcemy przypisać środkowy przycisk do funkcji asystenta głosowego w systemie operacyjnym.

  • Zgadza się?

  • Mamy tutaj actionBuilder z AppCustomizationAction i tutaj.

  • Następnie, przechodząc dalej, rejestrujemy mapowanie między produktem, urządzeniem, aktywatorem i działaniem.

  • Oczywiście prawdziwy kod jest nieco bardziej skomplikowany, ale ogólna koncepcja jest taka sama.

  • Bardzo proste i łatwe w użyciu.

  • Oto kolejna bardzo ciekawa i interesująca funkcja.

  • Umieściłem tu plik GIF, aby każdy mógł go łatwiej zobaczyć.

  • Zasadniczo, gdy podłączysz zgodne i obsługiwane urządzenie, w tym przypadku mysz Logitech Mobifold, system operacyjny wyświetli standardowe powiadomienie z informacją, że masz do niego aplikację.

  • Oczywiście poinformuj o tym użytkownika.

  • Po kliknięciu zostaniesz przekierowany(-a) do Sklepu Play, gdzie możesz zainstalować aplikację.

  • Ta funkcja nazywa się wykrywaniem szybkiego parowania.

  • Na koniec przejdźmy do interfejsu.

  • Ryan omówił wiele zalet Googlebooka, takich jak interfejs, więc przejdę do rzeczy.

  • Jak widzisz, Options+ działa na różnych platformach – w naszym przypadku na Windowsie, Macu, a teraz na Chromebookach.

  • Mamy więc 2 cele: chcemy, aby aplikacja sprawiała wrażenie dostosowanej do konkretnej platformy, ale jednocześnie chcemy, aby była podobna na wszystkich platformach. Oznacza to, że gdy poznasz Options+ na jednej platformie, będziesz mógł bez problemu korzystać z niej na innej.

  • Oznacza to, że chcemy wykorzystać możliwości konkretnych platform, ale jednocześnie używać tego samego języka projektowania.

  • Jak widać, wszystkie urządzenia mają spójną stylistykę.

  • Jak już wspomnieliśmy, użytkownicy Googlebooka zwykle korzystają z niego w sposób bardziej zbliżony do laptopa lub komputera stacjonarnego.

  • Dlatego nasza aplikacja, nawet na Googlebooku, wygląda jak aplikacja komputerowa.

  • Sama aplikacja może więc działać jak aplikacja komputerowa i dobrze sprawdza się w różnych rozmiarach okien, przy różnych sposobach dotykania ekranu i oczywiście można ją obsługiwać za pomocą myszy i klawiatury.

Plan działania na przyszłość i podsumowanie

  • To była krótka historia i krótka wersja historii urządzeń peryferyjnych Logitech i aplikacji Options+ na Googlebooku.

  • I to działa świetnie.

  • To dopiero początek.

  • Mamy kilka kroków: po pierwsze, chcemy udostępnić tę funkcję na większej liczbie urządzeń, klawiatur, myszy i innych urządzeń peryferyjnych, a po drugie, chcemy ulepszyć tę aplikację na podstawie opinii prawdziwych użytkowników.

  • And then, of course, the most important is we working going to work with Google further down the road, and the integrate deeper integrate into the new platforms.

  • Naszym ostatecznym celem jest sprawienie, aby dostosowywanie urządzeń peryferyjnych było bardzo naturalnym elementem korzystania z Googlebooka i pomagało użytkownikom pracować tak, jak chcą.

  • Ok.

  • Koniecznie odwiedź nasze stoiska na dole i wypróbuj Options+ oraz fantastyczne urządzenia Logitech.

  • Dziękujemy też naszemu partnerowi, firmie Google, oraz wszystkim Państwu za poświęcony czas.

  • Bardzo dziękuję.

Kod

Fragmenty kodu

Fragment kodu w języku Kotlin w 26:16 w filmie „Omówienie interfejsu API do dostosowywania urządzeń peryferyjnych”
// Vendor and product Information
const val VENDOR_ID = 1234
val pid = 123

// Use the mouse Middle Button as the trigger
val trigger = ButtonCustomizationTrigger(MotionEvent.BUTTON_TERTIARY)

// Set Voice Assistant as the action
val actionBuilder = AppCustomizationAction.Builder(component, ACTION_MAIN)
actionBuilder.setData(ActionId.ACTION_VOICE_ASSIST.actionId) // Action IDs are predefined
val action = actionBuilder.build()

val im = context.getSystemService(INPUT_SERVICE) as InputManager
im.addPeripheralCustomization(VENDOR_ID, pid, trigger, action)