Upload
saxon
View
89
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Mobilne Aplikacije. Danijel Pobi, dipl. Ing. Računarstva. Mobilne aplikacije. Hardwer Pregled mobilnih OS-ova Android fragmentacija SDK, ADK, ADT, NDK OOP Eclipse. Hardware mobilnih platformi. Arhitekture: ARM (Cortex A8, Snapdragon, Tegra, ...) - PowerPoint PPT Presentation
Citation preview
MOBILNE APLIKACIJE
Danijel Pobi, dipl. Ing. Računarstva
Mobilne aplikacije
Hardwer Pregled mobilnih OS-ova Android fragmentacija SDK, ADK, ADT, NDK OOP Eclipse
Hardware mobilnih platformi
Arhitekture: ARM (Cortex A8, Snapdragon, Tegra, ...) x86 ULV i embedded (Intel Atom, AMD Z, VIA
Nano,...) ULV = Ultra low voltage SoC = System on Chip Glavne potrebe mobitela:
Mala dimenzije Malo zagrijavanje i potrošnja Velike performanse (?)
Smartphone OS-ovi
Smartphone OS-ovi: Windows Phone (Microsoft) Android (Google) iOS (Apple) Blackberry (RIM) Symbian !EOL (Nokia, Motorola,...) Windows Mobile (Microsoft) Crome OS (Google) Linux Mobile
Smartphone OS
Windows Phone
MicrosoftLicencaVisual StudioDefinitrana platformaC#, VB, C++MarketplaceSigurnost (SandBox )
GoogleOtvoren ?EclipseOgromna fragmentacijaJava, C++, Py,...StoreAntivirus s Stora obavezan!
AppleZatvorenXcodeDefinirana platformaObjective-C, C++iTunesIluzija sigurnosti postoji
Android iOS
Android
integracija Google servisa Popularan Velika podrška velikih proizvođača Hrpa aplikacija na Store-u Otvoren (~=?) (nadzire se problem) Ima jak hardware (top end, ali tu i počinju
problemi) Veliki broj revizija i verzija (problem
eskalira) Mukotrpno za programere
Android problemi: Otvorenost
Baza linux, ali... Microsoftu plaćaju za svaki prodani Android uređaj zbog
korištenja njihove tehnologije File System implementacija, Memory management
implementacija, sustav za povezivanje na PC, SM API, ... Oracle-u plaćaju patente za dijelove Java-e i JVM
implementacije Sigurnost veliki problem Zbog Linux kernela podložno postojećim virusima Zbog otvorenosti OS-a, tj. otvorenosti kernela, lagano
napraviti novi maliciozni program Višestruki Store-ovi i nema sustava kontrole aplikacija
Nema kontrole malicoznog softwarea Eksplicitni sadržaj (vjerovali ili ne, ovo je razlog uspjeha
androida!)
Android problemi: hardware
Ovdje nastaju najveći problemi za developere Jako velika fragmentacija Procesorske jezgre single core – octa core Frekvencije procesora ~400 MHz – 2GHz Arhitekture ARMv6 – ARMv8, x86-64 RAM 64MB – 4GB Arhitekture RAM-a Grafika još veći jaz (PowerVR, Qualcom, Nvidia, Intel,
TI,...) Memorija kapaciteti i brzine Ekrani rezolucije od 320x240 do 1920x1080 Nema standardizacije! (Odličan primjer hardware
standardizacije je Microsoft s WQVL)
Android problemi: verzioniranje
Jako mnogo verzija i revizija Time mislim na jako veliki broj verzija u
upotrebi (Gingerbread, Jelly Bean, Ice Cream Sandwitch,...)
Dobra stvar je da to pokazuje da se stalno radi na razvoju
Loše je što uvodi sve veću fragmentaciju u već kaotičan sustav
Android programiranje
OOP Glavni razvojni jezik je JAVA Android SDK (Android Software developement
Kit) ADT (Android Developer Tools) NDK (Native Developement Kit) NDK je za nativne aplikacije, znači C++ Primarni IDE za razvoj na Android platformi je
Eclipse Moguće koristiti i Visual Studio (C#), ali samo sa
određenim frameworcima (Xamarine, Mono,..)
Android programiranje
SDK vs NDK Managed vs Native Java vs C++ Kada koristiti šta? Native:
aplikacije gdje je brzina i kontrola programa jako važna (igrice, kompresija, enkripcija,...)
ako imate već nešta napravljeno u C++ Managed:
za sve ostalo
Kraj današnjeg predavanja
PITANJA?nema glupih pitanja
[email protected]će nikom neriješavam, ako
ih bude ;)