The PIT
Röster från ITM-koncernen.

Three ways to make a mobile application

November 30, 2011 10:42 by David Woxberg
Broadly speaking, mobile applications can be created in three different ways. This article contains a brief explanation of each of the three application types.

When people talk about mobile apps, they usually refer to native applications – programs that are installed on mobile phones.

Native applications can often be faster than web applications (more on web applications below). In practice, this may mean that the user interface in a native application is more quick and responsive compared to a web application.

Native applications also open up more possibilities when it comes to accessing phone features, including hardware features (such as Bluetooth access). They are also a good option for mobile games or applications that rely heavily on 3D functionality.

Native applications can be sold or offered for free through application stores (such as the App Store). This makes it easy to distribute the applications.

While many native applications are connected to the Internet, they do not have to be. It is also technically possible to use an Internet-enabled native application in offline mode, meaning for example that the user can access data (such as text and images) that has already been downloaded to the device. However, that requires that offline mode functionality has been enabled by the application developer.

Web applications

A mobile web application is a HTML based web site that has been adapted to mobile units, such as cell phones and tablets. Mobile web applications are accessed through web browsers.

Compared to native applications, mobile web applications are generally limited when it comes to accessing and using cell phone-specific features (including hardware features, such as Bluetooth).
The biggest strength of the mobile web application is reach. Different mobile platforms (such as iPhone and Android) are based on different operating systems but most, if not all, new cell phones contain a web browser.

While all mobile browsers do not work exactly the same, they are relatively similar. This makes it possible to create a mobile web site that can be used on more than one mobile platform. This limits the amount of code that needs to be written and maintained in order to support multiple mobile platforms. Native applications can require more work in comparison since a new native application (with unique source code) needs to be created for every platform that needs to be supported.

Web browsers in new cell phones are often powerful, which means that web applications can contain beautiful and advanced user interfaces. Tools such as HTML5, CSS3 and Javascript can be used to achieve this.

Internet access is required to access a web application. Once a web application has been accessed, however, it is technically possible to access it offline if the developer has enabled offline access/offline mode (more on this below).

Wrapped web applications

There is a third alternative – wrapped web applications – that combines the power of the native application with the reach of the mobile web application. This is a native application that contains a web browser which is used to open a mobile web site.

The native application is basically a wrapper for the mobile web site. If properly done, the mobile web site can be re-used again and again within different application wrappers. For example, the same mobile web site can be wrapped in a native iPhone application and in a native Android application. This limits the amount of code that needs to be written and maintained in order to support multiple mobile platforms.

Wrapped web applications can be distributed through application stores. In addition, they have the same access to phone features (such as bluetooth access) as regular native applications do.

Since a wrapped mobile application is largely based on web technology, it can be a bit slower than a native application.

A wrapped mobile application does not necessarily need to be connected to the Internet. Web pages and other resources can be placed locally in the app which makes it possible for the user to access them without the application ever being connected to the Internet.

Offline mode

Many mobile applications are connected to the Internet. But mobile app users do not always have Internet access. Therefore, apps often contain a so-called offline mode, meaning that mobile applications that require Internet access to fully function can be used to some extent even when the Internet connection is missing.

More specifically, offline mode can mean that certain functions are only available when the application is connected to the Internet. It can also mean that content that has already been downloaded, such as text and images for a news article, is saved in a local database that belongs to the application, making it possible for the user to read the article offline.

Offline mode can also be enabled in web applications. There are different ways of doing this, including the following HTML5-related features:

  • Specified resources such as HTML pages can be cached on the device.

  • Data can be saved in a database on the device.

  • Data can be saved on the user’s cell phone in key-value pairs.
However, since different mobile web browsers do not always work the same way, it is hard to guarantee that the three methods mentioned above will work in all mobile web browsers.


Tags:
Categories: Android | iPhone | Mjukvara | Mobilt | Teknik
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Android UI Utilities - grafiska verktyg för app-utvecklare

September 28, 2010 17:16 by David Woxberg

Ett intressant gränssnitts-paket för Android-utvecklare har släppts i betaversion. Android UI Utilities innehåller tre verktyg som kanske får jobbet att gå lite lättare och snabbare:

  • Med UI Prototyping Stencils går det att bygga Android-prototyper med hjälp av verktyget Pencil.

  • Android Asset Studio skapar Android-ikoner utifrån befintliga texter och bilder.

  • Android Icon Templates innehåller mallar för det populära bildredigeringsprogrammet Photoshop.

Android UI Utilities finns att ladda ner i betaversion hos Google Code. På nedladdningssidan kan du också titta på en demonstrationsvideo. 

IDG har en artikel i ämnet.


Ny version av Android

June 29, 2010 17:15 by David Woxberg

Version 2.2 av Googles mobila operativsystem Android blev i går tillgängligt för användare av mobiltelefonen Nexus One. Det nya operativsystemet kallas för Froyo och innehåller en rad nyheter.

  • Fler funktioner för Exchange-användare, inklusive stöd för Exchange-kalendrar och global adresslista.
  • Gränssnittet har utvecklats, exempelvis med ett bildgalleri och med skärmknappar för kamerahantering.
  • Prestandan ska vara bättre, bland annat genom förbättrad minneshantering och genom att Googles javascript-motor V8 används i webbläsaren.

Mer information om Android 2.2 finns exempelvis hos Android Developers.


Tags:
Categories: Android | Mjukvara | Mobilt
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Nya möjligheter inom mobil annonsering

June 10, 2010 13:19 by David Woxberg

Det händer en del på området mobil marknadsföring just nu.

Apple har offentliggjort iAd - företagets nya plattfom för mobil annonsering i iPhone och iPod Touch.

Med hjälp av iAd kan utvecklare placera annonser inuti sina applikationer. Annonserna är integrerade med applikationerna och kan exempelvis innehålla text, bilder och video. Apple står för annonssystemet och administrerar betalningarna.

iAd kommer att vara inbyggt i iOS 4 - det kommande nya operativsystemet för iPhone och iPod Touch.

Google är ett annat företag som ligger i framkant inom mobil annonsering.

I maj offentliggjorde Google att click-to-call-annonser kommer att kunna användas inuti mobila applikationer. Click-to-call-annonser är annonser som innehåller telefonnummer, vilket innebär att användaren kan ringa direkt till annonsören via annonsen.

Jag tror personligen att fler spännande lösningar är att vänta med tanke på att Google nyligen slutförde köpet av annonsföretaget AdMob.


Tags:
Categories: Android | iPhone | Mobilt
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Alkoholkollen - nu på Android!

February 18, 2010 18:10 by David Woxberg

Visste du att vårt mobilprogram Alkoholkollen även på finns till Android? Alkoholkollen kan laddas ner via butiken Android Market som kan öppnas via Android-baserade mobiltelefoner såsom HTC Hero.

Alkoholkollens syfte är att visa ungefär hur lång tid det tar för kroppen att förbränna en viss mängd alkohol.

Så här funkar det:

  1. Användaren anger sitt kön, sin vikt och mängden alkohol som har druckits.
  2. Med hjälp av dessa uppgifter räknar programmet ut ungefär hur lång tid det tar för alkoholen att lämna kroppen.
  3. Beräknad promillehalt och förbränningstid visas.


Observera att Alkoholkollen inte är exakt. Hur snabbt kroppen förbränner alkohol beror på betydligt fler faktorer än man kan ta med i ett program som detta. Den exakta alkoholmängden kan bara mätas genom blodprov.

Alkoholkollen finns sedan tidigare till iPhone.


Tags:
Categories: Android | Mjukvara | Mobilt
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Mono-portalen för oss .NET-utvecklare till nya plattformar

October 5, 2009 13:54 by Lars Lundin

Android
Tack vare Koushik Dutta kan vi nu bygga och köra dotnet-applikationer på Android. Mono finns att ladda hem från Android Market och den tar upp 8 megabyte.
I skrivande stund kan endast Konsol-applikationer köras.

Läs mer om Mono:
http://www.koushikdutta.com/2009/01/mono-for-android-now-available-on.html

Mono-test på Youtube:
http://www.youtube.com/watch?v=UKanrniNCDI

 

Iphone
För Iphone finns nu MonoTouch. För mer information läs min kollega Marcus inlägg:
http://blogs.itmaskinen.se/post/2009/09/22/iPhone-utveckling-i-dotnet.aspx


Tags:
Categories: .Net | Android | Mono
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

ANDROID - Apps wihtout borders

March 2, 2009 11:25 by David Cocks

 

Android är en ny öppen mobil plattform som lanserades den 5 november 2007 av OHA (Open Handset Alliance). 

Arkitekturen i Android är uppdelad i fyra lager. 

Linux Kärna

Kärnan i Android är byggt på Linux och innehåller drivrutiner för bl.a skärm, kamera, bluetooth, trådlöst nätverk och annan hårdvara. Den hanterar också minnet, pågående processer och strömåtgång.

Bibliotek

Ovanpå kärnan så finns det ett antal bibliotek som t.ex OpenGL ES, 2d-grafik med SGL, FreeType för typsnittshantering, SQLite databasmotor och säkerhet via SSL. Där finns också ett mediabibliotek baserat på PocketVideos OpenCore som stöder filformaten mpeg4, h.264, mp3, aac, amr, jpg samt png. Här finns också Android Runtime som bygger på en Virtuel Machine som heter Dalvik och som är en icke standard JVM speciellt anpassad för Android. Dalvik kör varje enskilt program i en egen process med en egen virtual machine och är väldigt resurssnål när det gäller processor och minnesåtgång. Hur Dalvik exekverar bytekod skiljer sig från en traditionell JVM. Istället för att exekvera .class filer så kör Dalvik istället .dex filerna som är optimerade för minimal minnesåtgång. DX verktyget, som ingår i Android SDK, hanterar omvandlingen av .class filer till .dex filer vid kompilering.

Applikationsramverk 

Nästa lager är ett applikationsramverk. Här finns APIer som gör det möjligt för egenutvecklade applikatiner att hämta/skriva data från andra native applikationer för att exempelvis för att få tillgång till kontakter eller kalenderdata. Android gör ingen skillnad mellan native applikationer och egenutvecklade applikationer. Dem ligger på samma nivå med samma rättigheter till hård och mjukvara. Det innebär att det finns tillgång till kamera, GPS och Accelerometern, Till skillnad från t.ex iPhone så tillåter Android att egenutvecklade applikationer även kan köras som bakgrundsprocesser. Applikationer kan också hantera events som t.ex inkommande samtal och nya SMS meddelanden. Det går även att utveckla peer to peer applikationer via Google Talk. I applikationsramverket finns även resurshantering för (internationella textsträngar, grafik, layout) och vyer (menyer, knappar, listor). Det finns även en inbäddbar, open source, webbläsare som är baserad på WebKit vilket betyder att Android-mobiler kommer ha samma webbmotor som i Iphone och som i Macs webbläsare Safari.

Applikationslager

Överst ligger applikationslagret vilket är det som användaren ser. Bland de applikationer som kommer förinstallerade på en Android lur så finns bl.a en e-postklient, ett SMS-program, kalender, kartor, webbläsare,  kontakter, musikspelare, bildvisare, Android Marketplace klient (för att kunna ladda ner program på liknande sätt som Apples AppStore) samt Amazon MP3 Store klient (för att kunna ladda ner DRM musik). Alla applikationer utvecklas i Java med standard verktyg vilket gör att det redan finns en massa utvecklare som snabbt kan anpassa sig för denna plattform. Google utlyste en tävling vid lanseringen med 5 miljoner dollar i prispengar för de 20 bösta programmen utvecklade för plattformen, bara för att locka till sig utvecklare. 

Android SDK

Om man vill börja utveckla program för Android plattformen så finns det en SDK att ladda ner gratis för Windows, MacOS och Linux. Den innehåller bl.a Android API bibliotek som ger utvecklaren access till Android stacken, verktyg för utveckling, kompilering och debugging, emulator, fullständig dokumentation, kodexempel samt online support via Google Groups. För dem som föredrar att utveckla Android applikationer med Eclipse så finns det en speciell plugin att ladda ner som inkluderar SDK och emulator. Du behöver också Java Development Kit (JDK) 5 eller 6 från SUN installerad på din maskin för att kunna använda Android SDK.

Android Dev Phone 1

För att underlätta testning för utvecklare så har Google tagit fram en speciell test enhet som heter Android Dev Phone 1. Det är en sim och hårdvarumässigt upplåst enhet som tillåter test av osignerade applikationer. För att köpa en Android Dev Phone 1 enhet så måste man vara registrerad som Android utvecklare via Android Market. 

Android Market

Det är också via Android Market du ska gå när det är dags att distribuera din "killer applikation". Idén bakom Android Market påminner en del om Apples AppStore i sitt utförande. Här publicerar du din applikation och gör den tillgänglig för användare som kan ladda ner den till sin Android lur. Du väljer om den ska vara gratis eller inte. Som köpare så kan du kan söka på kategori eller namn. Det går att läsa en kortfattad beskrivning av applikationen och se skärmdumpar. Betalapplikationer fungerar i dagsläget endast i USA och UK men Tyskland, Österike, Holland, Frankrike och Spanien kommer att läggas till under Q1. Google lovar att fler länder kommer att läggas till under kommande kvartal. Betalningsmodellen påminner också om Apples AppStore där du kopplar ditt betalkort till ditt Android Market konto och kan betala och ladda ner via telefonen. Till skillnad från iPhone så har du 24 timmar på dig att ångra ditt köp och returnera din köpta applikation.

T-Mobile G1

Den 22 september 2008 så lanserades den första telefonen med stöd för Android av T-Mobile i USA och heter T-Mobile G1

Mer information

Läs mera om Android på: http://www.android.com/

För Android utvecklare: http://developer.android.com/

Open Handset Alliance: http://www.openhandsetalliance.com/

Android 1.1 SDK: http://developer.android.com/sdk/1.1_r1/index.html

Java Development Kit (JDK): http://java.sun.com/javase/downloads/index.jsp 

Eclipse: www.eclipse.org/downloads/ 

Info om T-Moble G1: http://www.t-mobileg1.com/


Tags:
Categories: Android
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed