Google Play'de yayınlanan uygulamaların 64 bit mimarileri desteklemesi gerekir. Uygulamanızın 64 bit sürümünü eklemek, performans iyileştirmeleri sağlar ve uygulamanızı yalnızca 64 bit donanıma sahip cihazlara hazırlar.
Aşağıdaki adımlar, 32 bit uygulamanızın 64 bit cihazları desteklemesini sağlar.
Uygulamanızı değerlendirme
Uygulamanızda tüm kitaplıklar veya SDK'lar dahil olmak üzere yalnızca Java programlama dilinde ya da Kotlin'de yazılmış kodlar kullanılıyorsa uygulamanız 64 bit cihazları destekliyor demektir. Uygulamanızda yerel kod kullanılıyorsa veya kullanılıp kullanılmadığından emin değilseniz uygulamanızı değerlendirin.
Hızlı durum kontrolü
Google Play Console'a gidip mevcut sürümlerin uyumlu olup olmadığını kontrol edin.

Google Play Console, 64 bit şartıyla ilgili herhangi bir sorun varsa taslak sürümleriniz için geçerli olan uyarıları da gösterir. Aşağıdaki resim bir örnektir.

Bir uyarı görünürse uygulamanızı 64 bit cihazlarla uyumlu hale getirmek için aşağıdaki adımları uygulayın.
Uygulamanız yerel kod kullanıyor mu?
Uygulamanız aşağıdaki durumlarda yerel kod kullanır:
- Uygulamanızda C/C++ (yerel) kod kullanılıyorsa
- Üçüncü taraf yerel kitaplıklarıyla bağlantı kurma
- Yerel kitaplıkları kullanan üçüncü taraf uygulama geliştiriciler tarafından oluşturulmuşsa
Uygulamanızda 64 bit kitaplıklar var mı?
APK dosyanızın yapısını inceleyin. APK oluşturulduğunda, uygulamanın ihtiyaç duyduğu yerel kitaplıklarla paketlenir. Yerel kitaplıklar, ABI'ya göre çeşitli klasörlerde depolanır. Her 64 bit mimariyi desteklemeniz gerekmez ancak desteklediğiniz her yerel 32 bit mimari için karşılık gelen 64 bit mimariyi eklemeniz gerekir.
ARM mimarisi için 32 bit kitaplıklar armeabi-v7a dizininde bulunur. 64 bit eşdeğeri arm64-v8a'dır.
x86 mimarisi için 32 bit için x86'yı ve 64 bit için x86_64'ü arayın.
Bu klasörlerin her ikisinde de yerel kitaplıklar bulunduğundan emin olun. Özetle:
| Platform | 32 bit kitaplıklar klasörü | 64 bit kitaplıklar klasörü |
|---|---|---|
| ALARMI ETKİNLEŞTİR | lib/armeabi-v7a
|
lib/arm64-v8a
|
| x86 | lib/x86
|
lib/x86_64
|
Uygulamanıza bağlı olarak her klasörde tam olarak aynı kitaplık grubunun bulunmayabileceğini unutmayın. Amaç, uygulamanızın yalnızca 64 bitlik bir ortamda doğru şekilde çalışmasını sağlamaktır.
Normalde hem 32 bit hem de 64 bit mimariler için oluşturulan bir APK veya pakette her iki ABI için de klasörler bulunur ve her klasörde ilgili yerel kitaplıklar yer alır. 64 bit desteği yoksa 32 bit ABI klasörü görebilirsiniz ancak 64 bit klasör göremezsiniz.
APK Analyzer'ı kullanarak yerel kitaplıkları arama
APK Analyzer, derlenmiş bir APK'nın çeşitli yönlerini değerlendirmenize olanak tanıyan bir araçtır. Yerel kitaplıkları bulmak ve 64 bit kitaplıkların mevcut olduğundan emin olmak için bu aracı kullanın.
- Android Studio'yu açın ve herhangi bir projeyi açın.
Menüden Build > Analyze APK'yı (Derle > APK'yı Analiz Et) seçin.

Değerlendirmek istediğiniz APK'yı seçin.
Varsa ".so" dosyalarını barındıran lib klasörüne bakın. Hiçbir sorun yoksa uygulamanız 64 bit cihazları destekliyor demektir ve başka bir işlem yapmanız gerekmez. armeabi-v7a veya x86 görüyorsanız 32 bit kitaplıklarınız var demektir.
arm64-v8a veya x86_64 klasöründe benzer ".so" dosyalarınızın olup olmadığını kontrol edin.

arm64-v8a veya x86_64 kitaplığınız yoksa derleme sürecinizi güncelleyerek bu yapıları APK'nızda derlemeye ve paketlemeye başlayın.
Her iki kitaplığın da paketlendiğini görüyorsanız uygulamanızı 64 bit donanımda test etme bölümüne geçebilirsiniz.
APK'ları açarak yerel kitaplıkları arama
APK dosyaları, ZIP dosyaları gibi yapılandırılmıştır. Komut satırını veya başka bir ayıklama aracını kullanarak APK dosyasını ayıklayın. Ayıklama aracınıza bağlı olarak dosyanın adını .zip olarak değiştirmeniz gerekebilir.
Uygulamanızın 64 bit cihazları destekleyip desteklemediğini belirlemek için yukarıdaki talimatları uygulayarak ayıklanan dosyalara göz atın. Komut satırından aşağıdaki komut örneğini çalıştırabilirsiniz:
:: Command Line
> zipinfo -1 YOUR_APK_FILE.apk | grep \.so$
lib/armeabi-v7a/libmain.so
lib/armeabi-v7a/libmono.so
lib/armeabi-v7a/libunity.so
lib/arm64-v8a/libmain.so
lib/arm64-v8a/libmono.so
lib/arm64-v8a/libunity.so
Bu örnekte armeabi-v7a ve arm64-v8a kitaplıklarının bulunduğuna dikkat edin. Bu, uygulamanın 64 bit mimarileri desteklediği anlamına gelir.
Uygulamanızı 64 bit kitaplıklarla derleme
Aşağıdaki talimatlarda 64 bit kitaplıkların nasıl oluşturulacağı açıklanmaktadır. Bu adımların yalnızca kaynaktan derleyebileceğiniz kod ve kitaplıkları kapsadığını unutmayın.
Android Studio veya Gradle ile derleme
Çoğu Android Studio projesi, temel derleme sistemi olarak Gradle'ı kullandığından bu bölüm her iki durum için de geçerlidir. Yerel kodunuz için derlemeleri etkinleştirmek üzere, desteklemek istediğiniz mimarilere bağlı olarak arm64-v8a ve/veya x86_64'yı uygulamanızın "build.gradle" dosyasındaki ndk.abiFilters ayarına ekleyin:
Modern
// Your app's build.gradle plugins { id 'com.android.app' } android { compileSdkVersion 27 defaultConfig { appId "com.google.example.64bit" minSdkVersion 15 targetSdkVersion 28 versionCode 1 versionName "1.0" ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64' // ...
Kotlin
// Your app's build.gradle plugins { id("com.android.app") } android { compileSdkVersion(27) defaultConfig { appId = "com.google.example.64bit" minSdkVersion(15) targetSdkVersion(28) versionCode = 1 versionName = "1.0" ndk { abiFilters += listOf("armeabi-v7a","arm64-v8a","x86","x86_64") } // ...
CMake ile derleme
Uygulamanız CMake kullanılarak oluşturulduysa arm64-v8a'yı "-DANDROID_ABI" parametresine ileterek 64 bit ABI'ler için derleme yapabilirsiniz:
:: Command Line
> cmake -DANDROID_ABI=arm64-v8a … or
> cmake -DANDROID_ABI=x86_64 …
ndk-build ile derleme
Uygulamanız ndk-build ile oluşturulmuşsa APP_ABI değişkenini kullanarak "Application.mk" dosyanızı değiştirerek 64 bit ABI'ler için derleme yapabilirsiniz:
APP_ABI := armeabi-v7a arm64-v8a x86 x86_64
32 bit kodu 64 bite taşıma
Kodunuz masaüstünde veya iOS'te zaten çalışıyorsa Android için ek bir çalışma yapmanız gerekmez. Kodunuz ilk kez 64 bit sistem için derleniyorsa ele almanız gereken temel sorun, işaretçilerin artık int gibi 32 bit tam sayı türlerine sığmamasıdır.
İşaretçileri int, unsigned veya uint32_t gibi türlerde depolayan kodu güncelleyin. Unix sistemlerde long, işaretçi boyutuyla eşleşir ancak bu durum Windows'ta geçerli değildir. Bunun yerine, amacı gösteren uintptr_t veya intptr_t türlerini kullanın. İki işaretçi arasındaki farkı depolamak için ptrdiff_t
türünü kullanın.
İşaretçi olmayanlar için bile int veya long gibi sabit genişlikli olmayan türler yerine her zaman <stdint.h> içinde tanımlanan belirli, sabit genişlikli tam sayı türlerini tercih etmelisiniz.
Kodunuzun işaretçiler ve tam sayılar arasında yanlış dönüşüm yaptığı durumları yakalamak için aşağıdaki derleyici işaretlerini kullanın:
-Werror=pointer-to-int-cast
-Werror=int-to-pointer-cast
-Werror=shorten-64-to-32
C/C++ nesnelerine işaret eden int alanları içeren Java sınıflarında da aynı sorun görülür. JNI kaynağınızda jint ifadesini arayın ve Java tarafında long, C++ tarafında ise jlong ifadesine geçtiğinizden emin olun.
Dolaylı işlev bildirimleri, 64 bit kod için çok daha tehlikelidir. C/C++
dolaylı olarak tanımlanmış bir işlevin (yani derleyicinin tanımını görmediği bir işlevin) dönüş türünün int olduğunu varsayar. İşlevinizin gerçek dönüş türü bir işaretçiyse bu, işaretçinizin bir int'e sığdığı 32 bit sistemde düzgün çalışır. Ancak 64 bit sistemde derleyici, işaretçinizin üst yarısını bırakır. Örneğin:
// This function returns a pointer:
// extern char* foo();
// If you don't include a header that declares it,
// when the compiler sees this:
char* result = foo();
// Instead of compiling that to:
result = foo();
// It compiles to something equivalent to:
result = foo() & 0xffffffff;
// Which will then cause a SIGSEGV if you try to dereference `result`.
Aşağıdaki derleyici işareti, örtük işlev bildirimi uyarılarını hataya dönüştürerek bu sorunu daha kolay bulup düzeltmenizi sağlar:
-Werror=implicit-function-declaration
Satır içi assembler'ınız varsa yeniden yazın veya düz bir C/C++ uygulaması kullanın.
Türlerin sabit kodlu boyutları varsa (ör. 8 veya 16 bayt) bunları eşdeğer sizeof(T) ifadesiyle (ör. sizeof(void*)) değiştirin.
32 bit için 64 bitten farklı bir kodu koşullu olarak derlemeniz gerekiyorsa genel 32/64 farklılıkları için #if defined(__LP64__), Android tarafından desteklenen belirli mimariler için ise __arm__, __aarch64__ (arm64), __i386__ (x86) ve __x86_64__ kullanabilirsiniz.
Geleneksel biçim belirleyiciler, 64 bit türleri hem 32 bit hem de 64 bit cihazlar için doğru olacak şekilde belirtmenize izin vermediğinden printf veya scanf benzeri işlevler için biçim dizelerini ayarlayın. <inttypes.h> içindeki PRI ve SCN makroları bu sorunu çözer. PRIxPTR ve SCNxPTR, onaltılık işaretçileri yazmak ve okumak için kullanılır. PRId64 ve SCNd64 ise 64 bit değerleri taşınabilir şekilde yazmak ve okumak için kullanılır.
Kaydırma yaparken, yalnızca 32 bit olan 1 yerine kaydırılacak 64 bitlik bir sabit elde etmek için 1ULL kullanmanız gerekebilir.
Android App Bundle ile boyut artışlarını azaltma
Uygulamanıza 64 bit mimari desteği eklemek APK boyutunuzun büyümesine neden olabilir. Aynı APK'da hem 32 hem de 64 bit yerel kodun bulunmasının boyut üzerindeki etkisini en aza indirmek için Android App Bundle özelliğinden yararlanmanızı önemle tavsiye ederiz.
Oyun geliştiricileri
En çok kullanılan üç motor 64 bit'i destekler:
- 2015'ten beri Unreal
- 2015'ten beri Cocos2d
- 2018'den beri Unity
Unity geliştiricileri
Yeterli sürümlere yükseltme
Unity, 2018.2 ve 2017.4.16 sürümleriyle 64 bit desteği sunar.
64 bit desteklemeyen bir Unity sürümü kullanıyorsanız yükseltmek istediğiniz sürümü belirleyin ve Unity'nin ortamınızı taşımak için sağladığı kılavuzları takip ederek uygulamanızın 64 bit kitaplıklar oluşturabilen bir sürüme yükseltildiğinden emin olun. Unity, düzenleyicinin en son LTS sürümüne yükselterek en yeni özelliklere ve güncellemelere erişmenizi önerir.
Aşağıdaki tabloda çeşitli Unity sürümleri ve yapmanız gerekenler özetlenmiştir:
| Unity Sürümü | Sürüm 64 bit'i destekliyor mu? | Önerilen işlem |
|---|---|---|
2020.x |
✔️ |
Derleme ayarlarınızın 64 bit kitaplıklar oluşturduğundan emin olun. |
2019.x |
✔️ |
Derleme ayarlarınızın 64 bit kitaplıklar oluşturduğundan emin olun. |
2018.4 (LTS) |
✔️ |
Derleme ayarlarınızın 64 bit kitaplıklar oluşturduğundan emin olun. |
2018.3 |
✔️ |
Derleme ayarlarınızın 64 bit kitaplıklar çıkardığından emin olun. |
2018.2 |
✔️ |
Derleme ayarlarınızın 64 bit kitaplıklar çıkardığından emin olun. |
2018.1 |
➖ |
Deneysel 64 bit desteği vardır. |
2017.4 (LTS) |
✔️ |
2017.4.16 sürümünden itibaren desteklenir. Derleme ayarlarınızın 64 bit kitaplıklar oluşturduğundan emin olun. |
Mart 2017 |
✖️ |
64 bit'i destekleyen bir sürüme geçin. |
Şubat 2017 |
✖️ |
64 bit'i destekleyen bir sürüme geçin. |
2017.1 |
✖️ |
64 bit'i destekleyen bir sürüme geçin. |
<=5,6 |
✖️ |
64 bit'i destekleyen bir sürüme geçin. |
Derleme ayarlarını 64 bit kitaplıklar oluşturacak şekilde değiştirme
64 bit Android kitaplıklarını destekleyen bir Unity sürümü kullanıyorsanız derleme ayarlarınızı düzenleyerek uygulamanızın 64 bit sürümünü oluşturabilirsiniz. Komut dosyası oluşturma arka ucu olarak IL2CPP arka ucunu kullanın. Unity projenizi 64 bit mimari oluşturacak şekilde ayarlamak için aşağıdakileri yapın:
- Build Settings'e (Derleme Ayarları) gidin ve Platform bölümünde Android'in yanında Unity simgesinin bulunduğunu doğrulayarak Android için derleme yaptığınızdan emin olun. 1. Unity simgesi Android platformunun yanında değilse Android'i seçip Switch Platform'u (Platformu Değiştir) tıklayın.
Oynatıcı ayarları'nı tıklayın.

Player Settings Panel > Settings for Android > Other settings > Configuration (Player Ayarları Paneli > Android Ayarları > Diğer ayarlar > Yapılandırma) bölümüne gidin.
Scripting Backend'i (Komut Dosyası Arka Ucu) IL2CPP olarak ayarlayın.
Target Architecture > ARM64 (Hedef Mimari > ARM64) onay kutusunu işaretleyin.

Normal şekilde oluşturun.
ARM64 için derleme yaparken tüm öğelerinizin bu platforma özel olarak derlenmesi gerektiğini unutmayın. APK boyutunu küçültmek için Unity'nin yönergelerini uygulayın ve boyuttaki bu artışı azaltmak için Android App Bundle özelliğinden yararlanın.
Çoklu APK ve 64 bit uyumluluğu
Uygulamanızı yayınlamak için Google Play'in birden fazla APK desteğini kullanıyorsanız 64 bit şartına uygunluğun sürüm düzeyinde değerlendirildiğini unutmayın. Ancak 64 bit şartı, Android 9 Pie veya sonraki sürümleri çalıştıran cihazlara dağıtılmayan APK'lar ya da uygulama paketleri için geçerli değildir.
APK'larınızdan biri uyumlu değil olarak işaretlenmişse ancak eski bir sürümse ve uyumlu hale getirilmesi mümkün değilse stratejilerden biri, söz konusu APK'nın manifest dosyasındaki uses-sdk öğesine bir maxSdkVersion="27" özelliği eklemektir. Bu APK, Android 9 Pie veya sonraki sürümleri çalıştıran cihazlara yayınlanmaz ve artık uyumluluğu engellemez.
RenderScript ve 64 bit uyumluluğu
Uygulamanız RenderScript kullanıyorsa ve Android araçlarının önceki bir sürümüyle oluşturulmuşsa uygulama için 64 bit uyumluluk sorunları görebilirsiniz. 21.0.0'dan önceki derleme araçlarında derleyici, harici bir .bc dosyasına bit kodu oluşturabilir. Bu eski .bc dosyaları artık 64 bit mimariler için desteklenmediğinden, dosyanın APK'nızda bulunması uygunluk sorununa neden oluyor.
Sorunu düzeltmek için projenizdeki tüm .bc dosyalarını kaldırın, ortamınızı build-tools-21.0.0 veya sonraki bir sürüme yükseltin ve Android Studio'da renderscriptTargetApi değerini 21+ olarak ayarlayarak derleyiciye .bc dosyaları oluşturmamasını söyleyin. Ardından uygulamanızı yeniden derleyin, .bc dosyalarını inceleyin ve Google Play Console'a yükleyin.
Uygulamanızı 64 bit donanımda test etme
Uygulamanızın 64 bit sürümü, 32 bit sürümüyle aynı kaliteyi ve özellik setini sunmalıdır. En yeni 64 bit cihazları kullanan kullanıcıların uygulamanızda mükemmel bir deneyim yaşamasını sağlamak için uygulamanızı test edin.
Yalnızca 64 bit cihazlar
Mümkün olduğunda, uygulamanızı aşağıdaki seçeneklerden birini kullanarak yalnızca 64 bitlik bir ortamda test etmenizi öneririz:
Yalnızca 64 bit sistem görüntüsüne sahip Google Pixel
Uygulama geliştirme ve test sürecini kolaylaştırmak için bazı Pixel cihazlarda yalnızca 64 bit ortamı olan özel sistem görüntüleri sağladık. Bu yalnızca 64 bitlik görüntüler, başlangıçta Android 13 ve 14 önizleme sürümleri için standart fabrika sistem görüntüleriyle aynı anda sağlanmıştı ancak uygulamanızı 64 bit uyumluluğu açısından test ederken bunları kullanmaya devam edebilirsiniz.
Yalnızca 64 bitlik bir görüntü alma
Fabrika sistem görüntülerine benzer şekilde, Android Flash Tool'u kullanarak veya cihazınıza manuel olarak yükleyerek yalnızca 64 bitlik bir görüntüyü cihazınıza yükleyebilirsiniz. Bu işlemler aşağıdaki bölümlerde açıklanmıştır.
Android Flash Tool'u kullanarak cihazınıza sistem görüntüsü yükleme
Android Flash Tool, desteklenen Pixel cihazınıza güvenli bir şekilde sistem görüntüsü yüklemenize olanak tanır. Android Flash Tool, Chrome veya Edge 79+ gibi WebUSB'yi destekleyen tüm web tarayıcılarıyla çalışır.
Android Flash Tool, cihazınıza yazılım yükleme sürecinde size adım adım rehberlik eder. Herhangi bir araç yüklemeniz gerekmez ancak cihazınızın kilidini açmanız ve Geliştirici seçeneklerinde USB üzerinden hata ayıklamayı etkinleştirmeniz gerekir. Talimatların tamamı için Android Flash Tool belgelerine bakın.
Cihazınızı USB üzerinden bağlayın, ardından yüklemek istediğiniz sistem görüntüsünün türüne bağlı olarak aşağıdaki bağlantılardan birini kullanarak Android Flash Tool'a gidin ve ekrandaki talimatları uygulayın:
Yalnızca 64 bit Android 14 (Beta 5.2) sistem görüntüleri
Yazılım yüklemeye çalıştığınız cihazı seçin:
Android 13 (QPR3 Beta 3.2) yalnızca 64 bit sistem görüntüleri
Yükleme yapmak istediğiniz cihazı seçin:
Manuel olarak cihazınıza sistem görüntüsü yükleme
En son sistem görüntüsünü indirip cihazınıza manuel olarak da yükleyebilirsiniz. Test cihazınızın sistem görüntüsünü indirmek için aşağıdaki tabloya bakın. Bir cihaza sistem görüntüsünü manuel olarak yüklemek, test ortamı üzerinde hassas kontrol sağlamanız gerektiğinde veya otomatik test gerçekleştirme gibi durumlarda sık sık yeniden yükleme yapmanız gerektiğinde faydalıdır.
Cihaz verilerinizi yedekleyip eşleşen sistem görüntüsünü indirdikten sonra görüntüyü cihazınıza yükleyebilirsiniz.
İstediğiniz zaman herkese açık en son derlemeye geri dönmeyi seçebilirsiniz.
Android 14 (Beta 5.3) için yalnızca 64 bit fabrika ayarı görüntüleri
Bu görüntüler, 64 bit uygulama uyumluluğunu test etmek için yalnızca 64 bitlik katı bir ortam sağlar. Yalnızca 64 bit olan bu yapılandırmalar yalnızca geliştiricilerin kullanımına yöneliktir.
| Cihaz | İndirme Bağlantısı | SHA-256 denetim toplamı |
|---|---|---|
| Pixel 4a (5G) | 7e6731fab811ae389f5ff882d5c5a2b8b942b8363b22bbcc038b39d7c539e60a |
|
| Pixel 5 | c4da6a19086a02f2cd2fa7a4054e870916954b8e5a61e9a07ee942c537e4b45a |
|
| Pixel 6 | 98943384284cbc7323b8867d84c36151757f67ae7633012fb69cb5d6bec2b554 |
|
| Pixel 6 Pro | 67ec40be5bd05a40fa5dabc1ce6795aae75d1904193d52e2da00425ed7cb895b |
Android 13 (QPR3 Beta 3.2) için yalnızca 64 bit fabrika ayarı görüntüleri
Bu görüntüler, 64 bit uygulama uyumluluğunu test etmek için yalnızca 64 bitlik katı bir ortam sağlar. Yalnızca 64 bit olan bu yapılandırmalar yalnızca geliştiricilerin kullanımına yöneliktir.
| Cihaz | İndirme Bağlantısı | SHA-256 denetim toplamı |
|---|---|---|
| Pixel 4a (5G) | b4be40924f62c3c2b3ed20a9f7fa4303aa9c39649d778eb96f86c867fe3ae59a |
|
| Pixel 5 | 6e5e027a4f64f9f786db9bb69d50d1a551c3f6aad893ae450e1f8279ea1b761a |
|
| Pixel 6 | becb9b81a5bddad67a4ac32d30a50dcb372b9d083cb7c046e5180510e479a0b8 |
|
| Pixel 6 Pro | b0ef544ed2312ac44dc827f24999281b147c11d76356c2d06b2c57a191c60480 |
Herkese açık derlemeye dönme
Fabrika ayarı görüntüsünü yüklemek için Android Flash Tool'u kullanabilir veya Nexus ve Pixel Cihazlar için Fabrika Ayarı Görüntüleri sayfasından fabrika ayarlarına uygun bir sistem görüntüsü alıp cihaza manuel olarak yükleyebilirsiniz.
Android Emulator
Android 12'den (API düzeyi 31) itibaren Android Emulator sistem görüntüleri yalnızca 64 bit olarak sunulur. Uygulama testi için yalnızca 64 bitlik katı bir ortam elde etmek amacıyla Android 12 (API düzeyi 31) veya sonraki sürümleri içeren bir sistem görüntüsü kullanarak Android Sanal Cihazı (AVD) oluşturun.
Diğer cihaz seçenekleri
Bu cihazlardan birine sahip değilseniz veya Android Emulator'ı kullanamıyorsanız en iyi seçenek, Google Pixel gibi 64 bit özellikli bir cihaz veya diğer cihaz üreticilerinin son çıkan amiral gemisi cihazlarından birini kullanmaktır.
Uygulamanızı yükleme ve test etme
APK'nızı test etmenin en kolay yolu, uygulamayı Android Debug Bridge (adb) kullanarak yüklemektir. Çoğu durumda, cihaza hangi kitaplıkların yükleneceğini belirtmek için --abi parametresini kullanabilirsiniz. Bu komut, uygulamayı yalnızca 64 bit kitaplıklarla cihaza yükler.
:: Command Line
# A successful install:
> adb install --abi armeabi-v7a YOUR_APK_FILE.apk
Success
# If your APK does not have the 64-bit libraries:
> adb install --abi arm64-v8a YOUR_APK_FILE.apk
adb: failed to install YOUR_APK_FILE.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
# If your device does not support 64-bit, an emulator, for example:
> adb install --abi arm64-v8a YOUR_APK_FILE.apk
ABI arm64-v8a not supported on this device
Başarıyla yükledikten sonra uygulamanızı her zamanki gibi test ederek kalitesinin 32 bit sürümle aynı olduğundan emin olun.
Bilinen uyumluluk sorunlarını kontrol etme
Test ederken uygulamanızda, 64 bit cihazlarda çalışırken uygulamaları etkileyen aşağıdaki sorunların olup olmadığını kontrol edin. Uygulamanız etkilenen kitaplıkları doğrudan kullanmasa bile, uygulamanızın bağımlılıklarındaki üçüncü taraf kitaplıklar ve SDK'lar kullanıyor olabilir.
SoLoader
Yerel kod yükleyici SDK'sı SoLoader'ı kullanıyorsanız 0.10.4 veya daha yeni bir sürüme güncelleyin. Uygulamanız, SoLoader'a bağlı SDK'lar kullanıyorsa etkilenen SDK'ların en son kararlı sürümüne de güncellediğinizden emin olun.
SoLoader 0.9.0 ve önceki sürümler, sistem kitaplıklarının /vendor/lib:/system/lib içinde bulunduğunu varsayar. Bu hata, yolun mevcut olduğu Pixel 7 gibi cihazlarda görülmez ancak bu varsayım, yalnızca /vendor/lib64:/system/lib64 içinde sistem kitaplıkları bulunan cihazlarda kilitlenmelere neden olur.
Bu sorunu ve SoLoader'ın neden olduğu diğer sorunları düzeltme hakkında daha fazla bilgi için Google Yardım Merkezi'ndeki ilgili yanıtı inceleyin.
OpenSSL
OpenSSL kitaplığını kullanıyorsanız OpenSSL 1.1.1i veya sonraki bir sürüme güncelleyin. Uygulamanız, HTTPS kullanarak iletişim sağlayan SDK'lar veya OpenSSL'ye bağlı başka SDK'lar kullanıyorsa daha yeni bir OpenSSL sürümü kullanan SDK'nın en yeni sürümüne de güncellediğinizden emin olun. Mevcut değilse SDK sağlayıcıyla iletişime geçin.
ARMv8.3 PAC, çalışma zamanında işaretçilerin kimliğini doğrulayarak donanım destekli kontrol akışı bütünlüğünü etkinleştirir. OpenSSL'nin eski sürümleri bu özellikleri yanlış kullanarak ARMv8.3a ve sonraki sürümleri temel alan işlemcilere sahip tüm cihazlarda çalışma zamanı kilitlenmelerine neden oluyordu.
Bu sorunu ve OpenSSL'nin neden olduğu diğer sorunları düzeltme hakkında daha fazla bilgi için Google Yardım Merkezi'ndeki ilgili cevaba bakın.
BTI
ARMv8.5 ve sonraki sürümler, JOP saldırılarına karşı korunmaya yardımcı olmak için Dal Hedef Talimatları'nı (BTI) kullanır. BTI ile oluşturulan kitaplıkların rastgele ofsetlerine ayrılan gizleme SDK'larının önceki sürümleri, uygulamaların kilitlenmesine neden olabilir. Talimatlar HINT olarak kodlandığından bu hata, BTI'yi desteklemeyen cihazlarda gözlemlenemez.
Yayınla
Uygulamanızın hazır olduğunu düşündüğünüzde normal şekilde yayınlayın. Her zaman olduğu gibi, uygulamanızı dağıtırken en iyi uygulamaları takip etmeye devam edin. Uygulamanızın kalitesinin tutarlı olmasını sağlamak için sınırlı sayıda kullanıcıya sunum yapmak üzere kapalı test kanallarından yararlanmanızı öneririz.
Önemli bir güncelleme yayınlarken olduğu gibi, daha geniş bir kitleye yayınlamadan önce 64 bit özellikli cihazlarda kapsamlı bir şekilde test ettiğinizden emin olun.
İndir Android 14 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 14 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 14 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 14 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 13 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 13 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 13 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
İndir Android 13 factory system image (64-bit-only)
İndirmeden önce aşağıdaki hüküm ve koşulları kabul etmeniz gerekir.
Hükümler ve Koşullar
By clicking to accept, you hereby agree to the following:All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.
Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).
WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.