Nové výhodné předplatné namísto kreditů je tu! Více informací. Upravili jsme také naše provozní podmínky.
NOVINKA: Staň se datovým analytikem a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Lekce 17 - Android Intenty a aktivity - Otevírání fotografií

V minulé lekci, Android Intenty a aktivity - Focení a ukládání fotografií, jsme otevřeli fotoaparát a vytvořili soubor pro budoucí fotografii.

Dnešní Android tutoriál bude zaměřený na zabezpečený přístup k souborům zařízení.

Pro nás je to důležité proto, že naše ukázková aplikace Activities bude s úložištěm pracovat. Konkrétně při činnostech souvisejících s fotografováním a výběrem obrázku z galerie.

Android je velmi populární platforma a z tohoto důvodu musí dbát stále na vyšší a vyšší bezpečnost. Od verze API 24 (Android 7.0 Nougat) existuje nové bezpečnostní omezení přístupu k souborům naší aplikace z jiných aplikací. Pokud chce jedna aplikace přistupovat k souborům druhé aplikace, zprostředkovává nově tento přístup třída FileProvider.

Třída FileProvider generuje objekty typu Uri s cestou k souborům aplikace a uděluje druhým aplikacím dočasná oprávnění k přístupu k nim.

V případě naší ukázkové aplikace Activities chceme vytvořit fotografii pomocí fotoaparátu. Musíme tedy nejprve vytvořit soubor, do kterého bude později fotografie uložena. Cesta k souboru se odesílá spolu s intentem pro otevření fotoaparátu.

Soubor pro fotografii vytváří naše aplikace, která nemá k souboru přístup. Musíme fotoaparátu přístup umožnit právě prostřednictvím třídy FileProvider vygenerováním objektu Uri s cestou k souboru a dočasným udělením oprávnění. Pokud tak neučiníme, dojde za běhu aplikace k jejímu pádu ve chvíli, kdy se pokusíme otevřít fotoaparát.

Definice třídy FileProvider

Třídu FileProvider definujeme v souboru AndroidManifest.xml v elementu <application> takto:


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Před koupí tohoto článku je třeba koupit předchozí díl

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš s Provozními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Přístup k jednotlivým lekcím dle způsobu pořízení.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V Android tutoriálu se podíváme na třídu FileProvider sloužící ke zpřístupnění souborů uložených v úložišti zařízení.
Článek pro vás napsal Pavel
Avatar
Autor se věnuje programování v Javě, hlavně pro Android. Mezi jeho další zájmy patří Arduino, Minecraft.
Aktivity