C ve C ++ kullanarak Android geliştirme [kapalı]


47

Ben bir C, C ++ geliştiricisiyim. Mobil gelişim ile ilgileniyorum. Android uygulamaları C ve C ++ kullanarak nasıl geliştirebileceğimi bilmek istiyorum, C, C ++ geliştiricileri için bir kit sunduğunu okudum , ancak Java kitiyle ilgili tüm işlevleri yok. C / C ++ geliştirme kitine mi gitmeliyim yoksa gelecekte tüm işlevselliği sağlayamayacaklarından java öğrenmek daha mı iyi?

Yanıtlar:


33

Kısa versiyon: Android'de C ++ ile çalışmak her Android SDK / NDK versiyonuyla mümkün ve kolaydır, ancak Java ile çalışmaktan daha zordur.


Uzun versiyon :

Her sürüm için Google, Android Native Development Kit'e daha fazla işlev ekler ve Java kodunda daha bağımsız hale getirir.

Daha fazla ayrıntı için http://developer.android.com/sdk/ndk/overview.html adresini okuyun :

Yaşam döngüsü geri aramalarını yerel kodda uygulamanıza izin veren yerel bir aktivite yazın. Android SDK, herhangi bir etkinlik yaşam döngüsü geri çağrısı (onCreate (), onPause (), onResume (), vb) yerel kodunuzu bildiren bir uygunluk sınıfı olan NativeActivity sınıfını sağlar. Geri aramaları, meydana geldiklerinde bu olayları ele almak için yerel kodunuzda uygulayabilirsiniz. Yerel etkinlikleri kullanan uygulamalar Android 2.3 (API Seviye 9) veya üstü sürümlerde çalıştırılmalıdır. Hizmetler ve İçerik Sağlayıcıları gibi özelliklere yerel olarak erişemezsiniz, bu yüzden bunları veya başka herhangi bir çerçeve API'sini kullanmak istiyorsanız, JNI kodunu yine de yazabilirsiniz.

Sorun şu ki, en yeni NDK'yi kullanırsanız, dağıtmayacaksınız ve son zamanlarda Android sürümleri kullanamayacaksınız.

Yine de, önceki NDK sürümlerinde bile, minimum Java koduna (işletim sistemi ile etkileşim için) ve tam uygulama koduna C ++ veya yerel bir şeye sahip olabilirsiniz.

Yerel geliştiricilerin, tüm derleme ve oluşturma işlemlerini sizden saklayan Visual Studio 201x için bir eklenti olan Vs-Android gibi bir IDE eklentisi aracılığıyla C veya C ++ ile tam olarak çalışmasına yardımcı olma çabaları da var: http://code.google.com / p / v-robot /

Ayrıca, uygulamanızı diğer işletim sistemlerine aktarmayı planlıyorsanız, uygulamanızın özü için C ++ ile çalışmak (belki üstünde bir betik dili ile) iyi bir fikirdir. Geliştirme süresi boyunca diğer alternatiflerden çok daha pahalıdır - C ++ 'a özgü nedenlerden dolayı ve mevcut dev araçları uygulamalarında, örneğin çok fazla derleme zamanı etkin verimliliğinizi öldürebilir.

Olduğu söyleniyor, bu mobil uygulamalar üzerinde çalışmak için en kolay yolu değil.


8

Oyun Geliştirme'ye girecek kesin bir planınız varsa C ++ 'a gitmenizi öneririm. Ama değilse, Java için daha iyi. İşte resmi android web sitesinde sizin için iyi bir astar:

Android için Oyun Geliştirme: Hızlı Bir Astar

NOT: Lütfen öğreticinin 2. adımını (2. Adım: Bir Dil Seçin) okuyun.

Java'yı hiç tanımıyorsanız ve uzun süre Android'de uygulamalar geliştirmeyi seviyorsanız, Java'yı öğrenmek çok önemlidir. Resmi web sitesinde verilen harika dersler var. Özellikle Android geliştirme için öğrenmek için kapmak güzel bir kitap var: İşte: Android Geliştirme için Java öğrenin


Soruyu gönderen kişi zaten C ++ 'ı bilir, bu yüzden tavsiyenizin amacı nedir?
abhi

7

C / C ++ geliştirme kitine mi gitmeliyim yoksa gelecekte tüm işlevselliği sağlayamayacaklarından java öğrenmek daha mı iyi?

Cevap her ikisi de.

  • Performansın asıl mesele olduğu herhangi bir uygulama yazıyorsanız, neredeyse java'dan farklı bir yerde olmaları gerekir. (C / C ++ en popülerdir) Oyunlar büyük bilet kalemidir, fakat başkaları da var.
  • Herhangi bir android geliştirme yapıyorsanız, java'yı makul bir seviyeye kadar öğrenmek için zaman ayırmalısınız.

Android dev yaparak java gerektirir derken ne demek istediğinizi anlamadım, ancak android oyunu kullanmak istiyorsanız c / c ++ kullanın. Neden sadece c / c ++ 'ı bütünüyle kullanmıyorsun.
Lance Pollard
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.