woensdag 15 februari 2012

Flex Mobile op Android en iOS


Met Adobe Flex kun je één programma schrijven, en dat verspreiden op zowel Android als iOS.

Om je applicatie op Android te testen, volstaat een certificaat dat in Flex zelf kan gegenereerd worden.

Voor iOS is het een stuk moeilijker. Flex heeft een p12 bestand, een provisioning profile en een certificate password nodig om iOS apps te kunnen compileren.

Meld je aan op http://developer.apple.com en ga naar het Provisioning Portal (let op: gebruik bij voorkeur Chrome als webbrowser).

Eerst moet je je test toestellen toevoegen. Klik op Devices, kies een naam en voeg de Device ID toe. Deze ID kun je vinden door met je toestel naar de mobiele website http://m.diawi.com te surfen. Je kunt maximaal 100 toestellen toevoegen.

De volgende stap bestaat er in om het Signing Certificate en het Mobile Provisioning Profile te genereren. Op een Mac is dit simpel (via de keychain toepassing). In Windows gebruiken we OpenSSL hiervoor.

Download en installeer OpenSSL Light op http://www.slproweb.com/products/Win32OpenSSL.html.
Best mogelijk dat je ook de C++ Redistributables moet bij installeren.

Open een command prompt en verander de directory naar C:\OpenSSL-Win32\bin.

Tik dan:

set RANDFILE=.rnd
set OPENSSL_CONF=C:\OpenSSL-Win32\bin\openssl.cfg

(uiteraard pas je het pad aan als je OpenSSL ergens anders hebt geplaatst).

Nu genereer je je private key. Tik:

openssl genrsa -out mykey.key 2048

En dan:

openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj "/emailAddress=mijnemail@domein.com, CN=MIJNFIRMA, C=LANDCODE"

Pas uiteraard de voorbeeldparameters aan.

Ga dan naar Certificates in het Provisioning Portal. Klik op de "Request Certificate" knop.

Upload het bestand "CertificateSigningRequest.certSigningRequest" and start het generatieproces van het certificaat.

Download het gegenereerde certificaat (developer_identity.cer) in de OpenSSL-Win32\bin directory.

De volgende stap is het omvormen van dit .CER bestand naar een P12 certificaat:

openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM

En dan:

openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12

Kies een paswoord en onthoud het goed. Vervolgens wordt het bestand "iphone_dev.p12" aangemaakt. Dit is het eerste bestand dat we nodig hebben.

Om een mobile provisioning file te maken, moeten we eerst een App ID aanmaken. Ga naar de App ID sectie op het Provisioning Portal.

Kies New APP ID, tik een beschrijving en gebruik "*" als bundle identifier.

Nu koppelen we alles aan elkaar. Ga naar Provisioning en kies New profile. Kies een naam voor het profiel, het certificaat dat moet gebruikt worden, de AppID en de toestellen waarop je de applicatie wilt laten draaien. Kies Submit en download de .provisioning file naar de OpenSSL-Win32\bin directory.

Je hebt nu voldoende gegevens op via Flex een IPA bestand aan te maken. Om een test link naar je gebruikers te sturen, kun je de website http://www.diawi.com gebruiken.