Mobil cihazlarda Chrome Uygulamalarını çalıştırmak için kullanılan araç zinciri, erken geliştirici önizlemesindedir. Bizimle iletişime geçin Chrome Uygulamaları geliştirici forumumuz GitHub sorun izleyici ve Stack Overflow'u veya G+ Geliştiricileri sayfamızı ziyaret edin.
Genel Bakış
Chrome Uygulamalarınızı Android ve iOS'ta Apache'ye dayalı bir araç zinciri aracılığıyla çalıştırabilirsiniz Cordova, yerel uygulamalarla mobil uygulamalar geliştirmeye yönelik açık kaynak bir mobil geliştirme çerçevesi özelliklerini geliştirirsiniz.
Apache Cordova, uygulamanızın web kodunu yerel bir uygulama kabuğuyla sarmalar ve şunları yapmanıza olanak tanır:
karma web uygulamanızı Google Play ve/veya Apple App Store üzerinden dağıtmanız gerekir. Apache Cordova'yı kullanmak için
mevcut bir Chrome uygulamasıyla cca
(c ordova c hrome a pp) komut satırını kullanırsınız
aracını kullanın.
Ek kaynaklar
- Cordova ile geliştirme yaparken unutulmaması gereken birkaç özel nokta var; Bunları değerlendirmeler bölümünde listeledik.
- Mobil cihazlarda hangi Chrome API'lerinin desteklendiğini görmek için API Durumu sayfasını ziyaret edin.
- Chrome Uygulamanızı araç zinciri olmadan bir Android cihazda önizlemek için Chrome Uygulamaları Geliştirici Aracı (ADT) hakkında daha fazla bilgi edinin.
Haydi başlayalım.
1. Adım: Geliştirme araçlarınızı yükleyin
Mobil cihazlar için Chrome Uygulamaları araç zinciri, iOS 6 ve sonraki sürümleri ile Android 4.x ve sonraki sürümleri hedefleyebilir.
Tüm platformlar için geliştirme bağımlılıkları
npm
içeren Node.js 0.10.0 (veya üzeri) sürümü gereklidir:- Windows: Şu konumdan indirilebilen yükleme yürütülebilir dosyalarını kullanarak Node.js'yi yükleyin: nodejs.org.
- OS X veya Linux: Yürütülebilir yükleme işlemleri, nodejs.org adresinden de edinilebilir. Şu durumda: isterseniz nvm üzerinden yükleme yapmak daha kolay olabilir. Örnek:
curl https://raw.github.com/creationix/nvm/master/install.sh | sh source ~/.bash_profile || source ~/.profile || source ~/.bashrc nvm install 0.10 nvm alias default 0.10
Android hedefleniyor
Android için uygulama geliştirirken, ayrıca şunları da yüklemeniz gerekir:
- Java JDK 7 (veya üzeri)
- Android SDK 4.4.2 veya sonraki sürümü
- Android ADT Bundle ile birlikte gelen Android SDK'yı ve Android Geliştirici Araçları'nı yükleyin.
- PATH ortam değişkeninize
sdk/tools
vesdk/platform-tools
öğelerini ekleyin. - OS X: Android SDK ile birlikte gelen Eclipse sürümü, JRE 6'yı gerektirir. Açılıyorsa Eclipse.app, JRE 6'yı yüklemenizi istemiyor. Uygulamayı Mac App Store'dan edinin.
- Linux: Android SDK için 32 bit destek kitaplıkları gerekir. Ubuntu'da, şu şekilde alın:
apt-get install ia32-libs
- Apache Karınca
apache-ant-x.x.x/bin
öğesini PATH ortam değişkeninize ekleyin.
iOS hedefleniyor
iOS geliştirmenin yalnızca OS X'te yapılabileceğini lütfen unutmayın. Ayrıca, şunları yüklemeniz gerekir:
- Xcode komut satırı araçlarını içeren Xcode 5 (veya üzeri)
- ios-deploy (iOS cihaza dağıtılması gerekir)
npm install -g ios-deploy
- ios-sim (iOS Simülatörüne dağıtılması gerekir)
npm install -g ios-sim
- İsteğe bağlı: iOS geliştiricisi olarak kaydolma
- Bu, gerçek cihazlarda test yapmak ve uygulama mağazasına gönderim için gereklidir.
- Yalnızca iPhone/iPad simülatörlerini kullanmayı planlıyorsanız kayıt işlemini atlayabilirsiniz.
cca
komut satırı aracını yükleyin
cca
uygulamasını npm üzerinden yükleyin:
npm install -g cca
Araç zincirini daha sonra yeni sürümlerle güncellemek için: npm update -g cca
.
Komut satırından bu komutu çalıştırarak her şeyin doğru şekilde yüklendiğini onaylayın:
cca checkenv
cca
sürüm numarası çıktı ve Android ya da iOS SDK'nızla ilgili onay gösterilir
teşekkür ederiz.
2. Adım: Bir proje oluşturun
YourApp
adlı dizinde varsayılan bir mobil Chrome uygulaması projesi oluşturmak için şu komutu çalıştırın:
cca create YourApp
Zaten bir Chrome Uygulaması oluşturduysanız ve bu uygulamayı bir mobil platforma taşımak istiyorsanız
Sembol bağlantısı oluşturmak için --link-to
işareti:
cca create YourApp --link-to=path/to/manifest.json
Bunun yerine mevcut Chrome uygulaması dosyalarınızı kopyalamak isterseniz --copy-from
işaretini kullanabilirsiniz:
cca create YourApp --copy-from=path/to/manifest.json
Henüz kendi Chrome Uygulamanız yok mu? Mobil cihazlar için çok sayıda örnek Chrome uygulamasından birini deneyin destek ile görüşün.
3. Adım: Geliştirme
Uygulamanızı iki şekilde derleyip çalıştırabilirsiniz:
- A seçeneği: Komut satırından,
cca
aracını kullanarak veya - Seçenek B: Eclipse veya Xcode gibi bir IDE kullanarak. IDE kullanımı tamamen isteğe bağlıdır (ancak çoğu zaman faydalıdır) karma mobil uygulamanızı başlatma, yapılandırma ve hata ayıklama konularında yardım alabilirsiniz.
Seçenek A: Komut satırını kullanarak geliştirme ve oluşturma
cca
tarafından oluşturulan proje klasörünüzün kök dizininden:
Android
- Uygulamanızı Android Emülatör'de çalıştırmak için:
cca emulate android
- Not: Bunun için bir emülatör ayarlamış olmanız gerekir. Bunu ayarlamak için
android avd
aracını çalıştırabilirsiniz.android
komutunu çalıştırarak ek emülatör resimlerini indirin. Intel görüntülerinin daha hızlı çalışması için Intel'in HAXM'sini yükleyin.
- Not: Bunun için bir emülatör ayarlamış olmanız gerekir. Bunu ayarlamak için
- Uygulamanızı bağlı bir Android cihazda çalıştırmak için:
cca run android
iOS
- Uygulamanızı iOS Simülatöründe çalıştırmak için:
cca emulate ios
- Uygulamanızı bağlı bir iOS cihazda çalıştırmak için:
cca run ios
- Not: Bunun için cihazınızda bir Temel Hazırlık Profili oluşturmuş olmanız gerekir.
Seçenek B: IDE (Entegre Geliştirme Ortamı) kullanarak geliştirme ve derleme
Android
- Tutulma'da
File
-> öğesini seçinImport
. Android
seçin >Existing Android Code Into Workspace
.cca
ile oluşturduğunuz yoldan içe aktarın.- Biri
*-CordovaLib
olmak üzere içe aktarılacak iki projeniz olması gerekir.
- Biri
- Uygulamanızı çalıştırmak için Oynat düğmesini tıklayın.
- Bir Çalıştırma Yapılandırması oluşturmanız gerekir (tüm Java uygulamalarında olduğu gibi). Genellikle bunu ilk kez otomatik olarak girmeniz istenir.
- İlk seferde cihazlarınızı/emülatörlerinizi de yönetmeniz gerekir.
iOS
Terminal penceresine şunu yazarak projeyi Xcode'da açın:
cd YourApp open platforms/ios/*.xcodeproj
Doğru hedefi oluşturduğunuzdan emin olun.
Sol üstte (Çalıştır ve Durdur düğmelerinin yanında), hedef projeyi seçmek ve olanak tanır.
CordovaLib
yerineYourApp
seçeneğinin belirlendiğinden emin olun.Oynat düğmesini tıklayın.
Uygulama kaynak kodunuzda değişiklik yapma
HTML, CSS ve JavaScript dosyalarınız cca proje klasörünüzün www
dizininde bulunur.
Önemli: www/
dosyasında değişiklik yaptıktan sonra, uygulamanızı dağıtmadan önce cca prepare
çalıştırmanız gerekir.
bir uygulamadır. cca build
, cca run
veya cca emulate
öğesini komut satırından çalıştırıyorsanız
otomatik olarak yapılır. Eclipse/XCode kullanarak geliştirme yapıyorsanız
Manuel olarak cca prepare
.
Hata ayıklama
Mobil cihazlarda Chrome Uygulamanızdaki hataları, Cordova uygulamalarında hata ayıkladığınız şekilde ayıklayabilirsiniz.
4. adım: Sonraki adımlar
Artık çalışan bir mobil Chrome uygulamasına sahip olduğunuza göre, mobil cihazlar.
Mobil Manifest
Chrome Uygulamasında yalnızca mobil platformlar için geçerli olan belirli ayarlar vardır. Bir
www/manifest.mobile.json
dosyası bunları içerecek şekilde ayarlanmış ve dosya boyunca belirli değerlere referans verilmiştir
eklenti dokümanlarını ve bu kılavuzu inceleyin.
Buradaki değerleri uygun şekilde ayarlamanız gerekir.
Simgeler
Mobil uygulamalar, masaüstü Chrome Uygulamalarından biraz daha fazla simge çözünürlüğüne ihtiyaç duyar.
Android için şu boyutlar gereklidir:
- 36 piksel, 48 piksel, 78 piksel, 96 piksel
iOS uygulamalarında, gereken boyutlar iOS 6 ve iOS 7'yi destekleyip desteklememenize bağlı olarak farklılık gösterir. En az sayıda simge gereklidir:
- iOS 6: 57 piksel, 72 piksel, 114 piksel, 144 piksel
- iOS 7: 72 piksel, 120 piksel, 152 piksel
manifest.json
dosyanızda eksiksiz bir simge listesi şöyle görünür:
"icons": {
"16": "assets/icons/icon16.png",
"36": "assets/icons/icon36.png",
"48": "assets/icons/icon48.png",
"57": "assets/icons/icon57.png",
"72": "assets/icons/icon72.png",
"78": "assets/icons/icon78.png",
"96": "assets/icons/icon96.png",
"114": "assets/icons/icon114.png",
"120": "assets/icons/icon120.png",
"128": "assets/icons/icon128.png",
"144": "assets/icons/icon144.png",
"152": "assets/icons/icon152.png"
}
Her çalıştırmanızda simgeler her platform için uygun yerlere kopyalanır
cca prepare
Başlangıç Ekranları
iOS'teki uygulamalar, uygulama yüklenirken kısa bir başlangıç ekranı gösterir. Varsayılan Cordova sıçraması seti
ekranlar platforms/ios/[AppName]/Resources/splash
kapsamındadır.
Gereken boyutlar şunlardır:
- 320 piksel x 480 piksel + 2x
- 768 piksel x 1024 piksel + 2x (Dikey iPad)
- 1024 piksel x 768 piksel + 2x (iPad yatay)
- 640 piksel x 1146 piksel
Başlangıç ekranı resimleri şu anda cca
tarafından değiştirilmiyor.
5. Adım: Yayınlama
Projenizin platforms
dizininde, biri Android ve diğeri Android için olmak üzere eksiksiz iki yerel projeniz var.
diğeri de iOS için. Bu projelerin sürüm sürümlerini oluşturup Google Play'de veya
iOS App Store.
Play Store'da yayınla
Android uygulamanızı Play Store'da yayınlamak için:
İki Android sürüm kimliğini güncelleyip
cca prepare
komutunu çalıştırın:android:versionName
,www/manifest.json
içindeversion
anahtarı kullanılarak ayarlanır (bu, sürümünü de ekleyebilirsiniz).android:versionCode
,www/manifest.mobile.js
içindekiversionCode
anahtarı kullanılarak ayarlandı.
platforms/android/ant.properties
öğesini düzenleyin (veya oluşturun) vekey.store
vekey.alias
ayarlarını yapın özellikleri (Android geliştirici belgelerinde açıklandığı şekilde).Projenizi oluşturun:
./platforms/android/cordova/build --release
platforms/android/ant-build/
içinde bulunan imzalı .apk dosyanızı bulun.İmzaladığınız uygulamayı Google Play geliştirici konsoluna yükleyin.
iOS App Store'da yayınla
www/manifest.mobile.js
içindeCFBundleVersion
anahtarını ayarlayarak uygulama sürümünü güncelleyin, ardındancca prepare
çalıştır.platforms/ios
dizininizde bulunan Xcode proje dosyasını açın:açık platformlar/ios/*.xcodeproj
Apple'ın Uygulama Dağıtım Kılavuzu'ndaki talimatları uygulayın.
Dikkat edilmesi gereken noktalar
Chrome Uygulamaları'nı kullanmaya yeni başladıysanız karşılaşabileceğiniz en büyük fark, bazı web özelliklerinin devre dışı olmasıdır. Ancak, bunların birçoğu şu anda Cordova'da çalışmaktadır.
Chrome Uygulamaları, mobil cihazlarda kullanıma hazır olmayabilir. Mobil cihaza taşımayla ilgili bazı yaygın sorunlar:
- Küçük ekranlarla, özellikle dikey yöndeyken düzen sorunları.
- Önerilen düzeltme: İçeriğinizi küçük ekranlar için optimize etmek üzere CSS medya sorgularını kullanın.
- chrome.app.window aracılığıyla ayarlanan Chrome Uygulaması pencere boyutları yok sayılır. Bunun yerine,
cihazın yerel boyutlarını ayarlayın.
- Önerilen düzeltme: Sabit kodlu pencere boyutlarını kaldırın; uygulamanızı farklı boyutlarda zihin.
- Küçük düğmelere ve bağlantılara parmağınızla dokunmak zor olur.
- Önerilen düzeltme: Dokunma hedeflerinizi en az 44 x 44 punto olacak şekilde ayarlayın.
- Dokunmatik ekranlarda olmayan, fareyle üzerine gelme özelliğinin kullanıldığı durumlarda beklenmedik davranış.
- Önerilen düzeltme: Fareyle üzerine gelmenin yanı sıra, dokunun.
- 300 ms'lik bir dokunma gecikmesi.
- Önerilen düzeltme: FastClick by FT Labs JavaScript çoklu dolgusunu kullanın.
- Konuyla ilgili temel bilgiler için bu HTML5Rocks makalesini okuyun.
Desteklenen Chrome API'leri
Aşağıdakiler de dahil olmak üzere temel Chrome API'lerinin birçoğunu Mobil Cihazlar için Chrome Uygulamaları'nın kullanımına sunduk:
- kimlik: OAuth2 kullanarak oturum açan kullanıcılar
- ödemeler: Mobil uygulamanızın içinde sanal ürünler satma
- pushMessaging - sunucunuzdan uygulamanıza push mesajları
- sockets (bağlantılar) - TCP ve UDP kullanarak ağ üzerinden veri gönderme ve alma
- bildirimler (yalnızca Android) - mobil uygulamanızdan zengin bildirimler gönderin
- storage: Anahtar/değer çifti verilerini yerel olarak depolama ve alma
- syncFileSystem: Google Drive tarafından yedeklenen dosyaları depolama ve alma
- alarmlar - Görevleri düzenli olarak çalıştırma
- boşta - Makinenin boşta kalma durumu değiştiğinde tespit edilir
- power (güç) - Sistemin güç yönetimi özelliklerini geçersiz kılın
Ancak, tüm Chrome JavaScript API'leri uygulanmamıştır. Chrome Masaüstü özelliklerinin hepsi mobil cihazlarda kullanılabilir:
<webview>
etiketi yok- IndexedDB yok
- getUserMedia() yok
- NaCl yok
İlerleme durumunuzu API Durumu sayfamızdan takip edebilirsiniz.
Chrome Uygulamaları Geliştirici Aracı
Android için Chrome Uygulama Geliştirici Aracı (ADT), aşağıdakileri yapmanıza olanak tanıyan bağımsız bir Android uygulamasıdır: yukarıda açıklandığı gibi geliştirme araç zincirini kurmadan bir Chrome Uygulaması indirip çalıştırmanız. Tekliflerinizi otomatikleştirmek ve optimize etmek için Mevcut bir Chrome uygulamasını (zaten .crx olarak paketlenmiş) hızlıca önizlemek istediğinizde Chrome ADT Android cihazınızda.
Android için Chrome ADT şu anda alfa sürümünden öncedir. Denemek için Yükleme ve kullanım talimatları için ChromeADT.apk sürüm notları.