Snabbtips Aktivera Android Flytta till SD-kortfunktion

Denna Android Quick Tip visar dig hur du tillåter dina slutanvändare att spara valbart värdefullt lagringsutrymme genom att välja att lagra din applikation på deras flyttbara SD-kort.

Slutresultatförhandsvisning

Denna handledning tar en befintlig Android-applikation och lägger till möjligheten för användaren att flytta programmet till sitt SD-kort. Den här funktionen introducerades i Android 2.2, men kräver inte att applikationen använder Android 2.2 SDK som minsta SDK-version. Även din Android 1.5-applikation kan använda den här funktionen.

Steg 1: Framställning

Vi börjar denna handledning genom att erhålla versionen av phrasebook Android-applikationen som användes i en tidigare handledning som heter Android SDK: Skapa en lokaliserad Phrasebook. Ladda källkoden om du vill utföra dessa steg själv, eller följ bara med och använd dessa steg med dina egna Android-applikationer.

Om användaren har Android 2.2 installerad på sin enhet och du inte har tillämpat det här tipset, kommer de att se en häftigt användbar, men gråtonad knapp när de försöker flytta programmet till sitt SD-kort. Utvecklare måste specifikt aktivera denna funktion inom sina specifika applikationer.

Steg 2: Ändra manifestet

Redigera filen AndroidManifest.xml i programmet för att lägga till en post för "android: installLocation" till märka:

 ... 

Värdet är inställt på "auto" så att användaren kan bestämma var den ska installeras. Om det här värdet inte alls finns är standardbeteendet bara tillåtet att installera till internt minne och inte ge användaren ett val. Andra möjliga värden att använda är "internalOnly", vilket är detsamma som beteendet utan denna inställning och "preferExternal", som först installerar programmet på SD-kortet, om det är tillgängligt och det finns plats.

Håll "minSdkVersion" samma som tidigare; det behöver inte vara 8 för att matcha Android 2.2:

 

Steg 3: Uppdatera Build Target

Byggnadsmålet måste dock uppdateras till åtminstone API Nivå 8 (Android 2.2), annars får du följande fel:


fel: Ingen resursidentifierare hittades för attributet 'installLocation' i paketet 'android'

Byt byggnadsmål genom att redigera projektegenskaperna (högerklicka på projektet i Eclipse) och välj ett mål med åtminstone API Nivå 8:

Steg 4: Ladda upp det

Ladda nu programmet på en 2,2-enhet (eller emulator). Gå till programhanteringsområdet och du ser nu att den kan flyttas till SD-kortet!

När ska du använda den här funktionen

I framtiden bör de flesta Android-applikationer göra det möjligt för användarna att välja installationsplatsen för program. Men för vissa applikationer ger den här funktionen inte så mycket mening. Om du till exempel har en app-widget, levande tapeter eller någon annan tjänst eller ett nytt program (till exempel en filhanterare), kommer din ansökan inte att användas om SD-kortet tas bort. Detta stöds dock. Till exempel kommer en levande tapeter på SD-kortet helt enkelt återgå till standard tapet och användaren kan återmarkera din levande tapeter när SD-kortet återinsätts.

Även om användarna kanske inte tar bort sina SD-kort ofta, är SD-kortet avmonterat när det är monterat via USB för användning på en dator. Detta kommer eventuellt att öka frekvensen som användaren måste omkonfigurera appar som påverkas. För en fullständig lista över appar som påverkas när de tas bort, se den här Google Android-referensen.

Slutsats

Nu kan dina användare välja om huruvida programmet ska läggas på sitt SD-kort eller ej. Att tillåta denna funktion är viktig när användare hämtar fler och fler applikationer och fyller upp sina Android-enheter med innehåll. Om du tillhandahåller detta alternativ nu har du en distinkt fördel gentemot andra program. Det tar bara några minuter, men möjliggör en mycket kraftfull funktion. Jag vet att jag letar efter det; Jag får ständigt varningar om att jag saknar utrymme på min bra gamla Nexus One.

Vänligen uppdatera dina applikationer för att tillåta detta och skicka dem tillbaka till marknaden. Jag skulle uppskatta det och så kommer resten av dina användare!

Om Författarna

Mobila utvecklare Lauren Darcey och Shane Conder har medverkat flera böcker om Android-utveckling: en fördjupad programmeringsbok med titeln Android Wireless Application Development och Sams TeachYourself Android Application Development inom 24 timmar. När de inte skriver, spenderar de sin tid på att utveckla mobil mjukvara hos sina företag och tillhandahålla konsulttjänster. De kan nås via e-post till [email protected], via deras blogg på androidbook.blogspot.com, och på Twitter @ androidwireless.

Behöver du hjälp med att skriva Android Apps? Kolla in våra senaste böcker och resurser!