Hvilke ' er egentlig ' tredjepartsapplikasjoner '?

Jeg vil gjerne vite hva som egentlig er tredjepartsapplikasjoner i android. Mens jeg henviste til Android-utvikling står det at applikasjonslaget består av:

  1. Innfødte apper
  2. Tredjepartsapper
  3. Utviklerapper

Jeg vet at tredjepartsapplikasjoner er de som ikke er utviklet av den første parten (leverandør av system) som nevnt i tredjepartsapplikasjoner . Men jeg tror at når det kommer til Android-tredjepartsapper og utviklerapper er de samme ikke? Kan noen hjelpe meg .

Kommentarer

  • Jeg kunne ærlig talt ikke ' t forstå skillet mellom native apps, tredjeparts apper og applikasjoner (alt dette er applikasjoner i ordboken min). Som det ble sitert fra boken (som vi ikke kunne ' ikke få tilgang med mindre vi kjøper den), forklarer den også forskjellen mellom disse, eller bare nevner dette? Hvis det gjør det, kan du også sitere og legge det til på spørsmålet?
  • @AndrewT.: Å beklager. Det var egentlig utviklerapper ikke applikasjoner som jeg redigerte det som er lagt ut. Kan du fortelle om tredjepartsapper skiller seg fra utvikler-apper. Som svaret fra Izzy skal begge være de samme fordi begge ikke er utviklet av OS og heller ikke produsenten .
  • Jeg antar at i denne sammenheng " utviklerapper " står for apper som ikke er installert fra noe " marked " – men de du skriver selv og testinstallerer via tilsvarende utviklingsrammer. I sammenheng med " signaturer " (se svaret mitt nedenfor): AFAIK disse appene er signert med " utviklingsnøkler ", så de har igjen en slags " spesiell signatur ". Jeg må undersøke dette dypere for å fortelle den eksakte forskjellen fra en bruker ' synspunkt.

Svar

Kortversjon

Alle apper bortsett fra " OS- og produsent-apper " betyr " tredjepartsapper ".

TL; DR

Tredjepartsapper er de som leveres av en, hrm, tredjepart. Selv om følgende vilkår ikke eksisterer, kan du visualisere dette som følger: Første part er den som leverer operativsystemet (AOSP / Google), andre part produsenten (legger til sine egne apper).

I utgangspunktet, dette kan leses som: Alt som ikke ble forhåndsinstallert. Dette er hva ordet " tredjepart " normalt brukes for 1 .

Teknisk bakgrunn

Du finner litt teknisk bakgrunn i Androids tillatelsessystem. Hvis du surfer på relaterte sider på Android-utviklere eller ser mine Apptillatelser forklart , for noen tillatelser du vil møte setningen " ikke for bruk av tredjepartsapper " (eller lignende). Hvordan bestemmer systemet hva som gjør en " tredjepartsapp "? Den ser på signaturen og sammenligner den med OS og produsentens signaturer. Hvis appens signatur ikke samsvarer med noen av de to, er den " tredjepartsapp ".

" Utviklerapper "

På spørsmålet ditt var fokuset å bestemme mellom " tredjepart " og " utvikler " apper. I utgangspunktet er utvikler-apper heller en " undergruppe " av " tredje fest " apper. Som den tilhørende utviklersiden sier, for å gjøre feilsøking av en app under utviklingen enklere 3 , kan den signeres " i feilsøkingsmodus ":

Du kan signere en app i feilsøking eller frigjøring modus. Du signerer appen din i feilsøkingsmodus under utvikling og i utgivelsesmodus når du er klar til å distribuere appen din. Android SDK genererer et sertifikat for å signere apper i feilsøkingsmodus. For å signere apper i utgivelsesmodus, må du generere ditt eget sertifikat.

[…]

Du kan kjøre og feilsøke en app signert i feilsøkingsmodus på emulatoren og på enheter som er koblet til utviklingsmanchinen din via USB, men du kan ikke distribuere en app som er logget på feilsøkingsmodus.

Dermed kan " utviklerapper " bli fortalt ved å bruke et kjent " feilsøkingssertifikat ". Som den siterte kilden sier, bør dette ikke brukes med " utgitte apper " (f.eks. Bør en utvikler ikke publisere noen app som har signert dette måte) 2 .

Ytterligere avlesninger


1: men teknisk sett er det kanskje ikke helt riktig (eksempel: i denne sammenhengen, hva ville en app blitt kalt som du manuelt installerte når den var signert med samme nøkkel som selve ROM-en – dvs. kom fra produsenten?)

2: Dette er av sikkerhetsmessige årsaker. Apper kan ha tilgang til andre appers ressurser når de bruker samme signatur – et faktum som brukes f.eks. Av " tillegg " for spesifikke apper som er skrevet av den samme utvikleren (som som allerede er kalt , f.eks. uttrykker det: applikasjoner ber om det, slik at systemet behandler dem som et enkelt program. Og: Android gir håndhevelse av tillatelsesbaserte tillatelser, slik at en app kan eksponere funksjonalitet for en annen app som er signert med et spesifisert sertifikat. Ved å signere flere apper med samme sertifikat og bruke signaturbaserte tillatelseskontroller, kan appene dine dele kode og data på en sikker måte ). Bruk " din egen " sertifikat beskytter " " appen din fra å få tilgang til " annen duve lopers «apps ".

3: AFAIK kan du ikke installere en " usignert app ", så det er et must å signere den. Når " signerer " en app, må du vanligvis oppgi to passord (ett for nøkkelbutikken som inneholder signaturene dine, og ett for signaturen seg selv). Ved å bruke " feilsøkingsmodus " signering, kan dette unngås, da dette bruker en intern signatur av SDK med et passord kjent av utviklingen verktøy. Dette gjør feilsøking mye lettere, ettersom du ikke trenger å skrive de to passordene om og om igjen under " kompilere ›test› kompilere ›test igjen› .. " prosess.

Kommentarer

  • : At ' et godt forseggjort svar. Men kan du fortelle at det er noe behov for å signere en app i feilsøkingsmodus .
  • Som beskrevet av mitt (igjen oppdaterte) svar: " gjør feilsøking av en app under utvikling lettere ". Jeg ' Jeg vil ta med litt bakgrunn om det med " enda en oppdatering ". Etter det, la ' s rydde opp i kommentarene våre (slett de som er foreldet av oppdateringene mine til svaret), skal vi?;)
  • : Ok, men kan du fortelle meg hva som egentlig betyr med signaturen til en app. betyr det som virkelig utviklet den (enten den ' OS, produsent) eller betyr det noe annet?
  • At ' går litt dypt inn i den tekniske delen. Det kan være lurt å referere til Wikipedia for dette. I utgangspunktet betyr det hvem som signerte appen, som vanligvis er utvikleren.Som med et papir som er signert av en (håndskrevet) signatur, viser en digital signatur ektheten til de signerte dataene (her .apk).

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *