Funkce Oreo
Jak začít používat Xamarin. Android pro vývoj aplikací pro nejnovější verzi Androidu.
Android 8,0 Oreo je nejnovější verze Androidu, která je dostupná od společnosti Google. Android Oreo nabízí spoustu nových funkcí pro vývojáře na platformě Xamarin. Android. Mezi tyto funkce patří kanály oznámení, označení oznámení, vlastní písma v XML, písma ke stažení, automatické vyplňování a obrázek v obrázku (PIP). Android Oreo zahrnuje nová rozhraní API pro tyto nové funkce a tato rozhraní API jsou k dispozici pro aplikace Xamarin. Android, když použijete Xamarin. Android 8,0 a novější.
Tento článek je strukturovaný, abychom vám pomohli začít s vývojem aplikací Xamarin. Android pro Android 8,0 Oreo. Vysvětluje, jak nainstalovat nezbytné aktualizace, nakonfigurovat sadu SDK a vytvořit emulátor (nebo zařízení) pro účely testování. Poskytuje také přehled o nových funkcích v Android 8,0 Oreo s odkazy na ukázkové aplikace, které ukazují, jak používat funkce Android Oreo v aplikacích Xamarin. Android.
Požadavky
Pro použití funkcí Oreo pro Android v aplikacích založených na Xamarin se vyžaduje následující:
Visual Studio – pokud používáte Windows, je vyžadována verze 15,5 nebo novější Visual Studio. pokud používáte Mac, vyžaduje se Visual Studio pro Mac verze 7.2.0.
Xamarin. Android – Xamarin. Android 8,0 nebo novější musí být nainstalované a nakonfigurované s Visual Studio.
Android SDK – Android SDK 8,0 (rozhraní API 26) nebo novější musí být nainstalované prostřednictvím Správce Android SDK.
Začínáme
Pokud chcete začít používat Android Oreo s Xamarin. Androidem, musíte si stáhnout a nainstalovat nejnovější nástroje a balíčky SDK předtím, než budete moct vytvořit projekt Android Oreo:
Aktualizujte na nejnovější verzi Visual Studio.
Pomocí Správce SDK nainstalujte balíčky a nástroje pro Android 8.0.0 (API 26) nebo novější.
Vytvořte nový projekt Xamarin. Android, který cílí na Android Oreo (API 26).
Konfigurace emulátoru nebo zařízení pro testování aplikací Oreo pro Android
Každý z těchto kroků je vysvětlen v následujících částech:
aktualizace Visual Studio a Xamarin. Android
pokud chcete do Visual Studio přidat podporu pro Android Oreo, postupujte takto:
pro Visual Studio 2019 použijte správce sady SDK k instalaci úrovně rozhraní API 26,0 nebo novější.
pokud používáte Visual Studio 2017:
aktualizujte na verzi Visual Studio 2017 15,7 nebo novější (viz aktualizace Visual Studio 2017).
Pomocí správce SDK nainstalujte rozhraní API úrovně 26,0 nebo novější.
Další informace o podpoře Xamarin pro Android Oreo najdete v poznámkách k verzi Xamarin. Android 8,0.
Instalace Android SDK
Chcete-li vytvořit projekt pomocí Xamarin. Android 8,0, je nutné nejprve pomocí nástroje Xamarin Android SDK Manager nainstalovat platformu SDK pro Android 8,0-Oreo nebo novější. Je také nutné nainstalovat Android SDK Tools 26,0 nebo novější.
spusťte správce SDK (v Visual Studio klikněte na nástroje Android > Android SDK Manager).
Nainstalujte balíčky Android 8,0-Oreo . Pokud používáte emulátor Android SDK, nezapomeňte zahrnout systémové image x86 , které budete potřebovat:
Nainstalujte Android SDK Tools 26.0.2 nebo novější Android SDK Platform-Tools 26.0.0 nebo novější a Android SDK Build-Tools 26.0.0 (nebo novější):
Spuštění Project Xamarin. Android
Vytvořte nový projekt Xamarin. Android. Pokud s Xamarin začínáte s vývojem pro Android, přečtěte si text Hello, Android, kde se dozvíte o vytváření projektů Xamarin. Android.
Když vytváříte projekt pro Android, musíte nakonfigurovat nastavení verze na Android 8,0 nebo novější. Chcete-li například cílit na projekt pro Android 8,0, musíte nakonfigurovat cílovou úroveň rozhraní API pro Android na android 8,0 (rozhraní API 26). Doporučuje se také nastavit cílovou úroveň rozhraní API na hodnotu rozhraní API 26 nebo novější. Další informace o konfiguraci úrovní úrovně rozhraní Android API najdete v tématu Principy úrovní rozhraní API pro Android.
konfigurace Emulator nebo zařízení
Pokud se pokusíte spustit výchozí AVD Manager založený na uživatelském rozhraní Google po instalaci Android SDK Tools 26,0 nebo novější, může se zobrazit následující chybová zpráva s pokynem k použití nástroje Command line AVD Manager avdmanager místo toho:
Tato zpráva se zobrazí, protože Google už neposkytuje samostatného správce AVD (GUI), který podporuje rozhraní API 26,0 a novější. pro android 8,0 Oreo musíte avdmanager k vytváření virtuálních zařízení pro android Oreo použít buď správce Xamarin Android Emulator Manager, nebo nástroj příkazového řádku.
Pokud chcete použít Android Device Manager k vytváření a správě virtuálních zařízení, přečtěte si téma Správa virtuálních zařízení pomocí Android Device Manager. Pokud chcete vytvořit virtuální zařízení bez Android Device Manager, postupujte podle pokynů v následující části.
Vytváření virtuálních zařízení pomocí avdmanager
Pokud chcete pomocí avdmanager vytvořit nové virtuální zařízení, postupujte podle těchto kroků:
Otevřete okno příkazového řádku a nastavte
JAVA_HOMEumístění sady Java SDK na vašem počítači. Pro typickou instalaci Xamarin můžete použít následující příkaz:setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0_131"Přidejte umístění
binsložky Android SDK do složkyPATH. Pro typickou instalaci Xamarin můžete použít následující příkaz:setx PATH "%PATH%;C:\Program Files (x86)\Android\android-sdk\tools\bin"Zavřete okno příkazového řádku a otevřete nové okno příkazového řádku. Pomocí příkazu avdmanager vytvořte nové virtuální zařízení. Pokud například chcete vytvořit AVD s názvem AVD-Oreo-8,0 pomocí systémové image x86 pro úroveň rozhraní API 26, použijte následující příkaz:
avdmanager create avd -n AVD-Oreo-8.0 -k "system-images;android-26;google_apis;x86"Když se zobrazí výzva s dotazem , že chcete vytvořit vlastní hardwarový profil [ne] , můžete zadat ne a přijmout výchozí hardwarový profil. Pokud vyberu Ano, avdmanager vás vyzve k zadání seznamu otázek pro přizpůsobení hardwarového profilu.
Po avdmanager vytvoření virtuálního zařízení se v rozevírací nabídce zařízení zahrne:
Další informace o konfiguraci emulátoru Androidu pro testování a ladění najdete v tématu ladění na Android Emulator.
Pokud používáte fyzické zařízení, jako je například Nexus nebo pixel, můžete buď aktualizovat zařízení prostřednictvím automatického navýšení (OTA) aktualizací nebo stáhnout bitovou kopii systému a přímo zařízení flash. Další informace o ruční aktualizaci zařízení na Android Oreo najdete v článku image pro vytváření zařízení Nexus a pixelů.
Nové funkce
Android Oreo zavádí řadu nových funkcí a možností, jako jsou kanály oznámení, označení oznámení, vlastní písma ve formátu XML, písma ke stažení, automatické vyplňování a obrázek v obrázku. Následující části tyto funkce zvýrazní a poskytují odkazy, které vám pomůžou je začít používat ve své aplikaci.
Kanály oznámení
Kanály oznámení jsou kategorie definované aplikací pro oznámení. Můžete vytvořit kanál oznámení pro každý typ oznámení, který potřebujete odeslat, a můžete vytvořit kanály oznámení, které budou odrážet volby provedené uživateli vaší aplikace. Funkce nové kanály oznámení vám umožní poskytnout uživatelům jemně odstupňovanou kontrolu nad různými druhy oznámení. Pokud například implementujete aplikaci pro zasílání zpráv, můžete pro každou skupinu konverzace vytvořenou uživatelem vytvořit samostatné kanály oznámení.
Kanály oznámení popisují, jak vytvořit kanál oznámení a použít ho k odesílání místních oznámení. Příklad kódu reálného světa najdete v ukázce NotificationChannels . Tato ukázková aplikace spravuje dva kanály a nastavuje další možnosti oznámení.
Oznámení oznámení
Oznámení jsou malé tečky, které se zobrazují přes ikony aplikace, jak je znázorněno na tomto snímku obrazovky:
Tyto tečky označují, že pro jeden nebo více kanálů oznámení v aplikaci přidružené k této ikoně aplikace jsou k dispozici nová oznámení – jedná se o oznámení, která se uživateli ještě nezavřela nebo nejednalo o jeho přijetí. Uživatelé můžou na ikonu dlouhou dobu stisknout, aby se v oznámeních, která jsou přidružená k oznámení, ztratili nebo vystupovali oznámením z nabídky s dlouhou klávesou appeaars.
Další informace o oznámeních oznámení najdete v tématu oznámení vývojářů pro vývojáře v Androidu.
Vlastní písma v XML
Android Oreo zavádí písma v XML, což umožňuje začlenit vlastní písma jako prostředky. Podporují se formáty písma OpenType (. OTF) a TrueType (. ttf). Chcete-li přidat písma jako prostředky, postupujte následovně:
Vytvořte složku prostředků nebo písem .
Zkopírujte soubory písem (například soubory . ttf a . OTF ) do prostředků a písma.
V případě potřeby přejmenujte každý soubor písma tak, aby odpovídal konvencím pojmenování souborů Androidu (tj. v názvech souborů používejte jenom malá písmena a – z, 0-9a podtržítka). Například soubor písma
Pacifico-Regular.ttfmůže být přejmenován na něco podobnéhopacifico.ttf.Použijte vlastní písmo pomocí nového
android:fontFamilyatributu ve formátu XML rozložení. Například následujícíTextViewdeklarace používá přidaný prostředek fontuTextView:<TextView android:text="Example Text in Pacifico Regular" android:layout_width="wrap_content" android:layout_height="wrap_content" android:fontFamily="@font/pacifico" />
Můžete také vytvořit soubor XML rodiny písem, který popisuje více písem a také podrobnosti o stylu a váhy. Další informace najdete v tématu věnovaném vývojářům pro Android v jazyce XML .
Písma ke stažení
Od Androidu Oreo můžou aplikace požádat o písma od poskytovatele, ale nenavazují je na APK. Písma se ze sítě stahují pouze podle potřeby. Tato funkce snižuje velikost APK, což zachovává využití paměti pro telefon a mobilní data. Tuto funkci můžete také použít pro rozhraní Android API verze 14 a vyšší instalací balíčku podpory pro Android support Library 26.
Když vaše aplikace potřebuje písmo, vytvoříte FontsRequest objekt (určením písma ke stažení) a pak ho předáte FontsContract metodě pro stažení písma. Následující kroky popisují proces stahování písma podrobněji:
Vytvořte instanci objektu FontRequest .
Podtříd a vytvořte instanci FontsContract. FontRequestCallback.
Implementujte metodu FontRequestCallback. OnTypeFaceRetrieved , která se používá k obsluze dokončování žádosti o písmo.
Implementujte metodu FontRequestCallback. OnTypeFaceRequestFailed , která se používá k informování vaší aplikace o všech chybách, ke kterým dochází během procesu žádosti o písmo.
Voláním metody FontsContract. RequestFonts načtěte písmo od poskytovatele písma.
Při volání RequestFonts metody nejprve zkontroluje, zda je písmo místně Uloženo v mezipaměti (z předchozího volání do RequestFont ). Pokud není v mezipaměti, volá poskytovatele písma, načte písmo asynchronně a pak výsledky předává zpátky do vaší aplikace vyvoláním OnTypeFaceRetrieved metody.
Ukázka písma ke stažení ukazuje, jak používat funkci písem ke stažení, kterou přináší Android Oreo.
Další informace o stahování písem najdete v tématu věnovaném písmům pro Android Developer SR.
Automatické vyplnění
Nová architektura automatického vyplňování v Androidu Oreo usnadňuje uživatelům zpracovávat opakující se úlohy, jako jsou přihlašovací údaje, vytváření účtů a transakce kreditních karet. Uživatelé tráví méně času zadáním informací (což může vést k chybám vstupu). Aby mohla vaše aplikace pracovat s architekturou automatického vyplňování, musí být v nastavení systému povolená služba AutoFill (uživatelé můžou povolit nebo zakázat automatické vyplňování).
Ukázka AutofillFramework demonstruje použití architektury automatického vyplňování. Zahrnuje implementace aktivit klientů se zobrazeními, která by se měla provádět automatické vyplňování, a službu, která může poskytovat data automatického vyplňování pro klientské aktivity.
Další informace o nové funkci automatického vyplňování a o tom, jak optimalizovat aplikaci pro automatické vyplňování, najdete v tématu věnovaném prostředí Android Developer Automate .
Obrázek v obrázku (PIP)
Android Oreo umožňuje, aby se aktivita spouštěla v režimu snímku obrázku (PIP), která překrývá obrazovku jiné aktivity. Tato funkce je určená pro přehrávání videa.
Pokud chcete určit, že aktivita vaší aplikace může používat režim PIP, v manifestu Androidu nastavte následující příznak na hodnotu true:
android:supportsPictureInPicture
Chcete-li určit, jak se má aktivita chovat, když je v režimu PIP, použijte nový objekt PictureInPictureParams . PictureInPictureParams představuje sadu parametrů, které lze použít k inicializaci a aktualizaci aktivity v režimu PIP (například preferovaný poměr stran aktivity). Do sady Android Oreo byly přidány následující nové metody PIP Activity :
EnterPictureInPictureMode – vloží aktivitu do režimu PIP. Aktivita se umístí do rohu obrazovky a zbytek obrazovky se vyplní předchozí aktivitou, která byla na obrazovce.
SetPictureInPictureParams – aktualizuje nastavení konfigurace PIP aktivity (například změnu v poměru stran).
Ukázka PictureInPicture znázorňuje základní použití režimu obrázku (PIP) pro kapesní zařízení zavedená v Oreo. Ukázka hraje video, které během přepínání mezi režimy zobrazení nebo jinými aktivitami pokračuje v nepřerušeném režimu.
Další funkce
Android Oreo obsahuje mnoho dalších nových funkcí, jako je například knihovna podpory Emoji, poloha rozhraní API, limity na pozadí, škála barev pro aplikace, nové zvukové kodeky, vylepšení WebView, vylepšená podpora navigačních kláves a nové rozhraní AAudio (audio) API pro zvuk s nízkou latencí. Další informace o těchto funkcích najdete v tématu věnovaném funkcím Android Developer Android Oreo a rozhraním API .
Změny chování
Android Oreo zahrnuje nejrůznější změny chování systému a rozhraní API, které můžou mít dopad na funkce existujících aplikací. Tyto změny jsou popsány následujícím způsobem.
Omezení spouštění na pozadí
Pro zlepšení uživatelského prostředí má Android Oreo omezení toho, co můžou aplikace provádět na pozadí. Pokud třeba uživatel sleduje video nebo hraje hru, aplikace běžící na pozadí může ovlivnit výkon aplikace náročné na video běžící v popředí. V důsledku toho Android Oreo ukládá následující omezení pro aplikace, které přímo nepracují s uživatelem:
Omezení služby na pozadí – Pokud je aplikace spuštěná na pozadí, má okno několik minut, ve kterých se pořád povoluje vytváření a používání služeb. Na konci tohoto okna Android zastaví službu na pozadí aplikace a považuje za nečinné.
Omezení všesměrového vysílání – Android 7,0 (rozhraní API 25), která mají omezení na všesměrová vysílání, která aplikace zaregistruje pro příjem. Android Oreo přináší tato omezení přísnější. Například aplikace Oreo pro Android již nemohou registrovat přijímače všesměrového vysílání pro implicitní všesměrová vysílání ve svých manifestech.
Další informace o novém omezení spouštění na pozadí najdete v tématu omezení spuštění na pozadí pro vývojáře v Androidu.
Zásadní změny
Aplikace, které cílí na Android Oreo nebo vyšší, musí upravovat své aplikace, aby podporovaly následující změny, pokud jsou k dispozici:
Android Oreo zastaralou možnost nastavit prioritu jednotlivých oznámení. Místo toho jste při vytváření kanálu oznámení nastavili doporučenou úroveň důležitosti. Úroveň důležitosti, kterou přiřadíte kanálu oznámení, se vztahuje na všechny oznamovací zprávy, které do ní publikujete.
U aplikací, které cílí na Android Oreo,
PendingIntent.GetService()nefunguje v důsledku nových omezení pro služby spuštěná na pozadí. Pokud cílíte na Android Oreo, měli byste místo toho použít PendingIntent. getbroadcast .
Příklad kódu
K dispozici je několik ukázek Xamarin. Android, které vám ukážou, jak využít výhod funkcí Oreo pro Android:
NotificationsChannels ukazuje, jak používat nový systém pro kanály oznámení představený v Androidu Oreo. Tento příklad spravuje dva kanály oznámení: jeden s výchozím významem a druhý s vysokou důležitostí.
PictureInPicture ukazuje základní použití režimu obrázku (PIP) pro kapesní zařízení zavedená v Oreo. Ukázka hraje video, které během přepínání mezi režimy zobrazení nebo jinými aktivitami pokračuje v nepřerušeném režimu.
AutofillFramework ukazuje použití architektury automatického vyplňování. Zahrnuje implementace aktivit klientů se zobrazeními, která by se měla provádět automatické vyplňování, a službu, která může poskytovat data automatického vyplňování pro klientské aktivity.
Písma ke stažení poskytují příklad použití funkce pro stažení písem popsané výše.
EmojiCompat ukazuje využití knihovny podpory EmojiCompat. Pomocí této knihovny můžete zabránit tomu, aby aplikace zobrazovala chybějící znaky Emoji jako "tofu" znaků.
Nedokončený záměr aktualizací umístění znázorňuje použití rozhraní API umístění k získání aktualizací umístění zařízení pomocí .
Aktualizace umístění – služba na popředí ukazuje, jak používat rozhraní API umístění k získání aktualizací umístění zařízení pomocí vázané a spuštěné služby na popředí.
Video
Vývoj pro Android 8,0 Oreo s využitím C #
Souhrn
Tento článek představil Android Oreo a vysvětluje, jak nainstalovat a nakonfigurovat nejnovější nástroje a balíčky pro vývoj na platformě Xamarin. Android na Androidu Oreo. Poskytuje přehled o klíčových funkcích dostupných v Androidu Oreo, s odkazy na ukázkový zdrojový kód pro několik nových funkcí. Obsahuje odkazy na dokumentaci k rozhraní API a témata pro vývojáře v Androidu, která vám pomůžou začít vytvářet aplikace pro Android Oreo. Také zdůraznila nejdůležitější změny chování pro Android Oreo, které by mohly mít vliv na stávající aplikace.









