• Jako możliwość wykorzystania funkcji urządzeń wbudowanych: dostępu do Internetu poprzez WiFi, korzystanie z odbiornika GPS czy dostępu do urządzenia bluetooth
Ogólnym założeniem architektury systemu Android jest to, że domyślnie stworzona aplikacja nie ma nadanych żadnych uprawnień. Oznacza to, że programista chcąc skorzystać z jakichkolwiek zasobów urządzenia musi w odpowiednim pliku (nazywanym plikiem manifestu) dodać uprawnienia dla tworzonej aplikacji. Efektem wykorzystywania przez aplikacje zasobów systemu Android, jest posiadanie przez nie konkretnych uprawnień.
Fakt ten łączony jest często z błędnym założeniem, że uprawnienia służą do ochrony danych użytkownika. Uprawnienia pełnią przede wszystkim rolę w udostępnianiu zasobów oraz służą do informowania użytkownika, z jakich zasobów korzysta aplikacja. Obecność uprawnień jest oczywistym elementem funkcjonalnego programu. Bez nich aplikacje byłyby bezużyteczne, ponieważ oczywistym jest fakt, że większość aplikacji tworzona jest po to, aby w sposób odpowiedni korzystać i przetwarzać zasoby systemu i urządzenia mobilnego.
2.2.1. Budowa i sposób działania aplikacji
Głównymi elementami aplikacji od strony programistycznej są aktywności. Obecność aktywności jest cechą charakterystyczną środowiska programistycznego systemu Android. Pozostałe elementy aplikacji, takie jak schematy widoków, modele czy zasoby (zarówno tekstowe, jak i graficzne) są zawarte w określonych katalogach, ujętych w specyfikacji technicznej systemu. Nie wyróżniają się one jednak na tle innych środowisk programistycznych.
Dodatkowym, charakterystycznym elementem systemu jest plik manifestu, który zawiera informacje o strukturze aplikacji. Plik manifestu jest plikiem o rozszerzeniu XML (Extensible Markup Language) i zawsze posiada tę samą nazwę: AndroidManifest .xml. W pliku tym programista musi zawrzeć wszystkie niezbędne informacje na temat własności aplikacji, takie jak:
• Minimalna wersja systemu Android, na której będzie działała aplikacja
• Docelowa wersja systemu, na którą jest przeznaczona aplikacja
• Uprawnienia (ang. permissions), które posiada aplikacja
• Informacje na temat aktywności i ich cech (np. określenie, która aktywność jest startową, czy aktywność powinna reagować na zmianę przechyłu telefonu itp.)
Bez względu na wersje systemu, każda aplikacja działa w oparciu o te same zasady i struktury. Każda aplikacja to nic innego jak zbiór aktywności. Precyzując - do wersji 4.1 (o nazwie
13