Del én i serien min om utvikling av uavhengige produkter
Som mobilutvikler er mitt største ønske selvfølgelig å skrive en app, lene meg tilbake og se pengene strømme inn ( ͡° ͜ʖ ͡°).
Hvilke problemer kan du møte når du lager en app på egen hånd? Jeg lanserte nylig en egen app og vil dele problemene jeg møtte, og hvordan jeg løste dem.
1. Definer behovet
Alle har litt forskjellige grunner til å ville lage en uavhengig app.
I det store bildet ser du kanskje et presserende behov der løsningen kan forandre verden — alt som mangler, er en programmerer.
I mindre skala vil du kanskje bare se din egen app i App Store. Den kan være et eksperiment med ny teknologi: Etter at iOS 8 introduserte Today-utvidelser, dukket det opp mange særpregede apper basert på dem. Eller det kan være et verktøy som fjerner en ulempe i hverdagen, for eksempel en filbehandlingsapp eller en gjennomtenkt værapp.
Finn et behov, uansett hvor stort eller lite det er. Det gir deg motivasjon til å fortsette.
Jeg laget en filbehandlingsapp kalt «Filbehandler» som svar på behovene til kona mi.
Filbehandler gjør telefonen til en server. Andre enheter på samme Wi-Fi-nettverk kan administrere filene på telefonen gjennom en nettleser: organisere mapper, kopiere og flytte filer samt laste dem opp eller ned.
Etter at jeg hadde bestemt meg for dette behovet, brukte jeg omtrent tre måneder på å få prosjektet lansert. Underveis lærte jeg litt Swift.
2. App-prototyper og interaksjoner
Når du har et behov og en løsning, har du sannsynligvis et grovt bilde av prototypen og hvordan folk skal bruke den. Neste trinn er å bestemme de konkrete skjermbildene og interaksjonene.
Jeg prøvde noen prototypverktøy, men ga dem opp.
Jeg fant ut at tiden det tok å lære et prototypverktøy og utforme skjermbildene, ville vært nok til å lage dem med xib. Til slutt løste jeg prototypbehovet med håndtegnede skisser.
Da jeg senere laget andre produkter, innså jeg at prototyper er nødvendige. Prototyping handler egentlig om å organisere logikken og sørge for at den henger sammen internt.
3. Hva med alle de små appikonene?
Da prototypen var klar, hadde jeg en grov forståelse av prosjektets overordnede struktur. Men i tillegg til koden gjensto det et problem alle uavhengige utviklere må forholde seg til!
Hva skal jeg gjøre med alle de små ikonene som brukes i prosjektet?
Her er noen ikonbiblioteker jeg har brukt:
- Alibabas ikonbibliotek → Komplette sett med vektorikoner der farger og størrelser kan justeres fritt, en svært sjenerøs ressurs. Kommersiell bruk krever fortsatt tillatelse fra opphavspersonen.
- icons8 → 56 500 gratis flate ikoner! Det finnes ikoner for ulike plattformer og til og med en Mac-app.
- iconfinder → Tilbyr også komplette ikonsett, med en tydeligere kommersiell modell.
4. Testing og betatesting
I en bedrift hjelper testere, produktkolleger og andre lagkamerater oss med å forbedre appen. Hvordan kan en uavhengig utvikler finne og forhindre så mange feil som mulig, så tidlig som mulig?
4.1 Test selv
Nå må jeg gjøre jobben jeg tidligere overlot til testteamet. I tillegg til manuell testing kan vi også oppdra en testape som hjelper oss å teste.
4.2 Rekrutter betatestere
Å lage en uavhengig app betyr å ha flere roller enn utvikler: produktarbeid, drift, kundestøtte og mer. Markedsføringen er også vårt eget ansvar. Begynn med venner, klassekamerater og familie, og skriv i sosiale nettverk: Appen min er nesten klar, kom og hjelp meg å prøve den!
Betabrukerne gjør mer enn å finne feil. De nye ønskene og forslagene deres kan bidra enda mer til å berike og forbedre appen.
4.3 Distribuer testversjoner
Hvis det er enkelt å få tak i enhetsidentifikatorene til betatesterne, kan du bruke en plattform for betaversjoner, for eksempel Pgyer eller fir.im. Enhetsbegrensninger gjelder.
Hvis det er vanskelig å få tak i enhetsidentifikatorer, kan du bruke Apples TestFlight, som ble åpnet etter iOS 8, med opptil 10 000 plasser for betatesting.
5. Skjermbilder til App Store
Hvorfor får skjermbildene til lanseringen et eget avsnitt? Uavhengige utviklere har relativt få markedsføringskanaler. Skjermbildene og beskrivelsen på produktsiden vår i App Store er inngangen og butikkvinduet til appen.
Hvis skjermbildene ser dårlige ut, kan vi miste en besøkende som nettopp har oppdaget appen.
I en bedrift hjelper UI-designere og produktkolleger med å lage skjermbildene. Hvordan får vi skjermbilder i riktige størrelser når vi jobber alene?
5.1 Skjermbilder i simulatoren
Du kan ta skjermbilder av appen direkte i simulatoren, selv om resultatet kan se litt enkelt ut.
5.2 Litt finpuss
Jeg anbefaler det gratis nettstedet shotbot. Last opp materialet ditt, så lager det et komplett sett med enhetlig formaterte produktskjermbilder.
Merknad, 2022-04-11: Senere skrev jeg en egen Mac-app for å lage skjermbilder til mine egne lanseringer i App Store.
6. Andre ressurser jeg brukte
Når du arbeider med bestemte interaksjoner og utforminger, vil verktøy fra tredjeparter og ferdige ikoner noen ganger ikke være helt slik du ønsker.
Da kan du redigere bildene selv!
De fleste utviklere er selvfølgelig ikke spesielt flinke med Photoshop, og noen har aldri brukt det. Hva kan vi gjøre?
Her er to nettsteder: Online PS og Meitus nettredigering
Du kan gjøre enkle bilderedigeringer i nettleseren uten å laste ned tung Adobe-programvare. Det er gode nyheter for oss som ikke er særlig flinke med Photoshop.
I tillegg til bilderedigering kan selve appikonet være en utfordring. Et annet nettsted jeg anbefaler, er MakeIcon: Last opp en logo på 1024×1024, så genererer det automatisk alle de andre ikonstørrelsene. Det støtter til og med iMessage på iOS 10.
7. Avsluttende tanker
Jeg fullførte utviklingen ved hjelp av eksisterende ressurser, uten hjelp fra en UI-designer. Hvis du har en designer, kan du bare finne veien ut selv  ̄ヘ ̄.
Jeg hadde lenge hatt lyst til å lage min egen app. Først nylig kom jeg skikkelig i gang, etter at jeg hadde fått orden på det jeg trengte. Viktigst av alt hadde jeg endelig et tydelig behov å løse, og underveis lærte jeg litt Swift.
Under utviklingen gikk det til og med en uke der jeg nesten ikke skrev kode. Jeg innså at når man lager en uavhengig app, er det behovet som virkelig får en til å fortsette. Størrelsen spiller ingen rolle; det viktigste er å løse et problem.
Etter hvert som utviklingen fortsatte, vokste kravene: Deling med AirDrop, iCloud-integrering og utvikling av ShareExtension var fortsatt ikke ferdig. Fortsett, og forbedre litt om gangen! ʘʚʘ (Jeg innrømmer definitivt ikke at den opprinnelige grunnen til at jeg laget appen, var å dele «samling.avi» mellom PC-en, telefonen og iPaden.)
Her er lenken til appen min: Den enkleste måten å behandle filer på, Filbehandler
Merknad, 2022-04-11: Appen finnes ikke lenger i søk. Uten en god måte å tjene penger på den solgte jeg den til et outsourcingfirma. Salget ga meg mye å tenke på; den neste artikkelen går nærmere inn på dette.
Den opprinnelige artikkelen ble publisert på Jianshu. Jianshu-kontoen min ble senere kompromittert, og de andre artiklene mine ble stadig blokkert. Nå flytter jeg alle blogginnleggene mine til github.io.