Kan jeg skrive innfødt iPhone-apps som bruker Python

stemmer
86

Bruke PyObjC , kan du bruke Python til å skrive Cocoa programmer for OS X. Kan jeg skrive innfødt iPhone-apps som bruker Python og i så fall hvordan?

Publisert på 04/09/2008 klokken 07:59
kilden bruker
På andre språk...                            


14 svar

stemmer
52

Du kan bruke PyObjC på iPhone også, på grunn av det gode arbeidet med Jay Freeman (saurik). Se iPhone-programmer i Python .

Merk at dette krever en jailbroken iPhone i øyeblikket.

Svarte 04/09/2008 kl. 08:44
kilden bruker

stemmer
33

Ikke i dag, i dag de eneste språkene å få tilgang til iPhone SDK er C / C ++, Objective C og Swift.

Det er ingen teknisk grunn til at dette ikke kan endres i fremtiden, men jeg ville ikke holde pusten for at dette skjer på kort sikt.

Når det er sagt, Objective-C og Swift egentlig ikke er så skummelt ...

2016 redigerings

Javascript med NativeScript rammeverk er tilgjengelig for bruk nå.

Svarte 04/09/2008 kl. 08:21
kilden bruker

stemmer
23

Det synes dette er nå noe utviklerne har lov til å gjøre: iOS Developer avtalen ble endret i går, og ser ut til å ha blitt ammended i en slik måte som å gjøre å bygge en Python interpretter i din søknad lovlig:

Seksjon 3.3.2 - Tolker

Gammel:

3.3.2 En søknad kan selv ikke installere eller starte annen kjørbar kode på noen måte, inkludert uten begrensning gjennom bruk av en plug-in arkitektur, ringer andre rammer, andre APIer eller på annen måte. Med mindre annet er godkjent av Apple skriftlig, kan ikke tolkes koden lastes ned eller brukes i et program med unntak av kode som er tolket og drives av Apples Dokumentert API-er og innebygde tolk (er). Uavhengig av det foregående, med Apples skriftlige samtykke, kan et program bruker innebygd tolket kode på en begrenset måte hvis slik bruk er utelukkende for å gi mindre funksjoner eller funksjonalitet som er i samsvar med det tiltenkte og annonserte Formålet med programmet.

Ny:

3.3.2 En søknad kan ikke laste ned eller installere kjørbar kode. Tolket kode kan bare brukes i et program hvis alle skript, kode og tolker er pakket i søknaden og ikke lastet ned. Det eneste unntaket til det foregående er skript og kode lastet ned og kjørt av Apples innebygde WebKit rammeverk.

Svarte 10/09/2010 kl. 12:48
kilden bruker

stemmer
23

Ja det kan du. Du skriver koden i tinypy (som er begrenset Python), og deretter bruke tinypy å konvertere den til C ++, og til slutt kompilere dette med XCode inn en innfødt iPhone app. Phil Hassey har publisert et spill kalt elefanter! ved hjelp av denne tilnærmingen. Her er mer informasjon,

http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/

Svarte 30/01/2010 kl. 06:03
kilden bruker

stemmer
20

En oppdatering til iOS Developer avtalen betyr at du kan bruke hva du vil, så lenge du oppfyller retningslinjene for utviklere. Avsnitt 3.3.1, som begrenset hva utviklere kan bruke for iOS utvikling, har blitt fullstendig fjernet.

Kilde: http://daringfireball.net/2010/09/app_store_guidelines

Svarte 14/04/2010 kl. 12:18
kilden bruker

stemmer
19

Ja, i dag kan du utvikle apps for iOS i Python.

Det er to rammeverk som kan være lurt å kassa: Kivy og PyMob .

Vennligst vurdere svarene på dette spørsmålet også, som de er mer up-to-date enn dette.

Svarte 12/07/2012 kl. 09:07
kilden bruker

stemmer
7

Pythonista har Eksporter til Xcode funksjon som gjør det mulig å eksportere Python-skript som Xcode prosjekter som bygger stående iOS-apper.

Svarte 03/09/2013 kl. 20:36
kilden bruker

stemmer
5

IPhone SDK Avtalen er også ganske vag på om du engang lov til å kjøre skriptspråk (utenfor en WebView er Javascript). Min lesning er at det er OK - så lenge ingen av skript du utfører er lastet ned fra nettet (det pre-installert og bruker redigert skript synes å være OK).

IANAL etc etc.

Svarte 28/09/2008 kl. 02:51
kilden bruker

stemmer
2

Teknisk sett så lenge tolket koden ikke er lastet ned (med unntak av Javascript), programmet kan godkjennes. Rhomobiles "Rhodes" rammeverk gjør nettopp det, bunting mobile Ruby, en lett versjon av Rails, og din app for distribusjon via app-butikken. Fordi både tolken og tolket kode er pakket inn i den endelige søknaden - Apple ikke finner det støtende.

http://rhomobile.com/products/rhodes/

Selv etter den nyeste Apple pressemelding - rhodes apps (mobile ruby) er fortsatt levedyktig på app-butikken. Jeg ville finne det vanskelig å tro at tinyPy eller PyObjC ikke ville finne et sted hvis det er en villig utviklermiljøet.

Svarte 04/05/2010 kl. 19:54
kilden bruker

stemmer
1

Jeg tror det ikke var mulig tidligere, men jeg har nylig hørt om PyMob, noe som virker interessant fordi apps er skrevet i Python og de endelige utganger er innfødt kildekoder i ulike plattformer (Obj-C for iOS, Java for Android etc). Dette er absolutt helt unik. Denne nettsiden forklarer det nærmere.

Jeg har ikke gitt det en sjanse ennå, men vil ta en titt snart.

Svarte 17/06/2012 kl. 06:20
kilden bruker

stemmer
1

Du kan gjøre dette med PyObjC, med en jailbroken telefonen selvfølgelig. Men hvis du ønsker å få den inn i App Store, vil de ikke tillate det fordi det "tolker kode." Men du kan være i stand til å bruke Shed Skin , selv om jeg ikke er klar over noen gjør dette. Jeg kan ikke komme på noen god grunn til å gjøre dette selv, som du mister dynamisk typing, og kan like godt bruke ObjC.

Svarte 10/04/2009 kl. 22:49
kilden bruker

stemmer
0

2019 Oppdatering:

Mens Python-iOS utvikling er relativt umoden og trolig vil hindre (AFAIK) app fra å ha innfødte UI og funksjonalitet som kan oppnås på en Apple-støttet utvikling språk, Apple synes nå å tillate embedding Python tolk i Native Swift / Obj-C apps.

Dette støtter import Python biblioteker og kjører Python-skript (selv med medfølgende kommandolinjeargumenter) direkte fra Native Swift / Obj-C-kode.

Mitt firma er faktisk innpakning vår infrastruktur (opprinnelig skrevet i Python) i en innfødt iOS søknad! Det fungerer meget godt, og kommunikasjon mellom delene lett kan oppnås via en klient-tjener.

Her er en fin biblioteket ved Beeware med en cookiecutter mal hvis du ønsker å prøve og kjøre Python-skript i iOS app: https://github.com/beeware/Python-Apple-support/tree/3.6 .

Svarte 26/07/2019 kl. 23:43
kilden bruker

stemmer
0

BeeWare er en åpen kildekode rammeverk for redigering innfødte iOS og Android-apps.

Svarte 08/02/2019 kl. 21:04
kilden bruker

stemmer
0

Den eneste betydelige "ytre" språk for iPhone utvikling som jeg er klar over med semi betydelig støtte i form av rammer og kompatibilitet er Monotouch , en C # /. NET miljø for utvikling på iPhone.

Svarte 05/01/2010 kl. 09:56
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more