Android uygulamanızı kullanıcılara yayınlamadan önce mutlaka gerçek bir cihazda test edin. Bu sayfada, Android Debug Bridge (ADB) bağlantısı üzerinden test ve hata ayıklama için geliştirme ortamınızın ve Android cihazınızın nasıl ayarlanacağı açıklanmaktadır.
Geliştirme için cihaz kurma
Cihazınızda hata ayıklamaya başlamadan önce, cihaza USB kablosu mu yoksa kablosuz bağlantı kullanarak mı bağlanmak istediğinize karar verin. Ardından şunları yapın:
Cihazda Ayarlar uygulamasını açın, Geliştirici seçenekleri'ni seçin ve ardından USB hata ayıklama'yı etkinleştirin (geçerliyse).
Sisteminizi cihazınızı algılayacak şekilde ayarlayın.
- ChromeOS: Ek yapılandırma gerekmez.
- macOS: Ek yapılandırma gerekmez.
- Windows: ADB için bir USB sürücüsü yükleyin (varsa). Yükleme kılavuzu ve OEM sürücülerinin bağlantıları için OEM USB sürücülerini yükleme başlıklı makaleyi inceleyin.
Ubuntu Linux: Aşağıdakileri ayarlayın:
- ADB'yi kullanmak isteyen her kullanıcının
plugdev
grubunda olması gerekir.plugdev
grubunda olmadığınızı belirten bir hata mesajı görürseniz aşağıdaki komutu kullanarak kendinizi gruba ekleyin:
sudo usermod -aG plugdev $LOGNAME
Gruplar yalnızca giriş yapıldığında güncellenir. Bu nedenle, bu değişikliğin geçerli olması için oturumu kapatmanız gerekir. Tekrar giriş yaptığınızda
id
kullanarakplugdev
grubunda olup olmadığınızı kontrol edebilirsiniz.- Sistemde, cihazı kapsayan
udev
kuralı yüklü olmalıdır.android-sdk-platform-tools-common
paketi, Android cihazlar için topluluk tarafından sürdürülen varsayılan birudev
kural grubu içerir. Yüklemek için aşağıdaki komutu kullanın:
apt-get install android-sdk-platform-tools-common
- ADB'yi kullanmak isteyen her kullanıcının
USB kullanarak cihazınıza bağlanma
Kurulumu tamamlayıp USB ile bağlandıktan sonra Android Studio'da Çalıştır'ı tıklayarak cihazda uygulamanızı oluşturup çalıştırın.
Ayrıca, aşağıdaki gibi adb
simgesini kullanarak da komut verebilirsiniz:
adb devices
komutunuandroid_sdk/platform-tools/
dizininden çalıştırarak cihazınızın bağlı olduğunu doğrulayın. Bağlıysa cihazı listede görürsünüz.- Cihazınızı hedeflemek için
-d
işaretiyle herhangi biradb
komutu verin.
Kablosuz bağlantıyı kullanarak cihazınıza bağlanma
Android 11 ve sonraki sürümlerde, Android Debug Bridge (ADB) aracılığıyla iş istasyonunuzdan uygulamanızı kablosuz olarak dağıtıp hatalarını ayıklayabilirsiniz. Örneğin, cihazınızı USB üzerinden fiziksel olarak bağlamadan ve sürücü yükleme gibi yaygın USB bağlantı sorunlarıyla uğraşmadan hata ayıklanabilir uygulamanızı birden fazla uzak cihaza dağıtabilirsiniz.
Kablosuz hata ayıklamayı kullanmak için eşleme kodu kullanarak cihazınızı iş istasyonunuzla eşlemeniz gerekir. Başlamak için aşağıdaki adımları tamamlayın:
- İş istasyonunuzun ve cihazınızın aynı kablosuz ağa bağlı olduğundan emin olun.
- Cihazınızda Android 11 veya sonraki bir sürümün yüklü olduğundan emin olun. Daha fazla bilgi için Android sürümünüzü kontrol etme ve güncelleme başlıklı makaleyi inceleyin.
- Android Studio'nun en son sürümünün yüklü olduğundan emin olun. Buradan indirin.
- İş istasyonunuzda SDK Platform Araçları'nın en son sürümüne güncelleyin.
Cihazınıza bağlanmak için aşağıdaki adımları uygulayın:
- Android Studio'yu açın ve çalıştırma yapılandırmaları menüsünden Pair Devices Using Wi-Fi'ı (Cihazları Kablosuz Bağlantı Kullanarak Eşle) seçin.
1. şekil. Çalıştırma yapılandırmaları menüsü.
Şekil 2. QR kodu veya eşleme kodu kullanarak cihazları eşleme iletişim kutusu. - Cihazınızda geliştirici seçeneklerini etkinleştirin.
- Cihazınızda kablosuz bağlantı üzerinden hata ayıklamayı etkinleştirin.
3.şekil Google Pixel telefondaki Kablosuz hata ayıklama ayarı. - Kablosuz hata ayıklama'ya dokunun ve cihazınızı eşleyin:
- Cihazınızı QR koduyla eşlemek için Cihazı QR koduyla eşle'yi seçin ve Şekil 2'de gösterilen QR kodunu tarayın.
- Cihazınızı eşleme koduyla eşlemek için Yeni cihazları kablosuz ağ üzerinden eşle iletişim kutusunda Cihazı eşleme koduyla eşle'yi seçin. Cihazınızda Eşleme kodu kullanarak eşle'yi seçin. Altı haneli bir kod görünür. Cihazınız Cihazları kablosuz ağ üzerinden eşleyin penceresinde göründüğünde cihazınızda gösterilen altı haneli kodu girip Eşle'yi seçin .
Şekil 4. Altı haneli eşleme kodu girişine örnek.
- Eşleme işleminden sonra uygulamanızı cihazınıza dağıtmayı deneyebilirsiniz.
Farklı bir cihazı eşlemek veya iş istasyonunuzda bu cihazı unutmak için:
- Cihazınızda Kablosuz hata ayıklama'ya gidin.
- Eşlenen cihazlar bölümünde iş istasyonunuzun adına dokunun.
- Unut'u seçin.
Cihaz yansıtma
Fiziksel cihazınızı Android Studio'daki Çalışan Cihazlar penceresinde yansıtabilirsiniz. Cihazınızın ekranını doğrudan Android Studio'ya aktararak Studio IDE'yi kullanarak uygulamaları başlatma ve uygulamalarla etkileşim kurma, ekranı döndürme, telefonu katlama ve açma, ses seviyesini değiştirme gibi yaygın işlemleri gerçekleştirebilirsiniz.
USB veya kablosuz hata ayıklama özelliği etkinleştirilmiş cihazlar bilgisayara bağlıyken cihaz yansıtma özelliği her zaman kullanılabilir. Running Devices (Çalışan Cihazlar) penceresini veya Device Manager'ı (Cihaz Yöneticisi) kullanarak yansıtmayı başlatabilir ve durdurabilirsiniz (View > Tool Windows > Device Manager). Cihaz yansıtmanın ne zaman etkinleştirileceğini de cihazın ayarlarından özelleştirebilirsiniz (Ayarlar > Araçlar > Cihaz Yansıtma).
Sesi yönlendirme
Cihaz yansıtma özelliğini kullanırken bağlı fiziksel cihazlardaki sesi bilgisayarınızın hoparlörlerine veya kulaklığınıza yönlendirebilirsiniz. Ses yönlendirme özelliği sayesinde kulaklığınızı bilgisayarınıza bağlı tutabilir ve bir cihaza manuel olarak bağlanıp ardından diğerine bağlanmak zorunda kalmadan hem bilgisayarı hem de bağlı telefonu dinleyebilirsiniz. Ses yönlendirmeyi etkinleştirmek için Dosya (macOS'te Android Studio) > Ayarlar > Araçlar > Cihaz Yansıtma'ya gidin ve Yerel cihazlardaki sesi yönlendir'i seçin. Android 12 veya daha yeni bir sürümü çalıştıran Firebase Test Lab cihazlarında, ayarlardan bağımsız olarak sesin her zaman yönlendirildiğini unutmayın.
Bilinen sorunlar
Bazı cihazlar, cihaz yansıtmayı destekleyecek kadar yüksek bir bit hızında kodlama yapamayabilir. Bu durumlarda, Çalışan Cihazlar penceresinde bir hata ve aşağıdakilere benzer günlükler görebilirsiniz.
2023-06-01 15:32:22,675 [ 56094] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [ 56289] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [ 56290] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1
Gizlilik uyarısı
Android Studio, cihaz yansıtma ayarlarına bağlı olarak bağlı ve eşlenmiş tüm cihazlar için cihaz yansıtmayı otomatik olarak başlatabilir. Bu durum, yansıtma bilgileri ve komutları şifrelenmemiş bir kanal üzerinden iletildiğinden adb tcpip
komutuyla bağlı cihazlar için bilgi ifşasına neden olabilir. Ayrıca Android Studio, adb sunucusuyla iletişim kurmak için şifrelenmemiş bir kanal kullandığından yansıtılan bilgiler, ana makinenizdeki diğer kullanıcılar tarafından ele geçirilebilir.
Cihaz bağlantısı sorunlarını giderme
Cihazınız Android Studio'ya bağlanmıyorsa sorunu çözmek için aşağıdaki adımları deneyin:
Bağlantı Asistanı ile sorun giderme
Bağlantı Asistanı, ADB bağlantısı üzerinden bir cihazı ayarlamanıza ve kullanmanıza yardımcı olacak adım adım talimatlar sağlar.
Yardımcıyı başlatmak için Araçlar > Cihaz Bağlantılarıyla İlgili Sorunları Giderme'yi seçin.
Bağlantı Asistanı, Asistan panelindeki bir dizi sayfada talimatlar, bağlama özel kontroller ve bağlı cihazların listesini sağlar. Gerekli sayfaları incelemek için Asistan panelinin alt kısmındaki Sonraki ve Önceki düğmelerini kullanın:
- Cihazınızı USB üzerinden bağlayın: Bağlantı Asistanı önce cihazınızı USB üzerinden bağlamanızı ister ve bağlı cihazlar için yeni bir tarama başlatabileceğiniz USB cihazları yeniden tara düğmesini sağlar.
- USB üzerinden hata ayıklamayı etkinleştirin: Bağlantı Asistanı, cihazdaki geliştirici seçeneklerinde USB üzerinden hata ayıklamayı nasıl etkinleştireceğinizi gösterir.
- ADB sunucusunu yeniden başlatın: Cihazınızı hâlâ kullanılabilir cihazlar listesinde görmüyorsanız Bağlantı Asistanı'nın son sayfasındaki ADB sunucusunu yeniden başlat düğmesini kullanın. ADB sunucusunun yeniden başlatılması, ADB'nin cihazları tekrar taramasına da neden olur. Cihazınız hâlâ kullanılabilir cihazlar listesinde görünmüyorsa aşağıdaki bölümdeki sorun giderme adımlarını deneyin.
USB bağlantı sorunlarını giderme
Bağlantı Asistanı, cihazınızı USB üzerinden algılamıyorsa sorunu çözmek için aşağıdaki sorun giderme adımlarını deneyin:
Android Studio'nun Android Emulator'a bağlandığını kontrol edin.
Sorunun Android Studio ile Android Emulator arasındaki bağlantı sorunundan kaynaklanıp kaynaklanmadığını kontrol etmek için aşağıdaki adımları uygulayın:
- Cihaz Yöneticisi'ni açın.
- Henüz yoksa yeni bir AVD oluşturun.
- AVD'nizi kullanarak emülatörü çalıştırın.
- Aşağıdakilerden birini yapın:
- Android Studio, emülatöre bağlanamıyorsa en son SDK Platform Araçları'nı indirip tekrar deneyin.
- Emülatör başarıyla başlatılırsa bir sonraki bölümde açıklandığı gibi USB kablosunu kontrol edin.
USB kablosunu kontrol edin
Sorunun hatalı bir USB kablosundan kaynaklanıp kaynaklanmadığını kontrol etmek için bu bölümdeki adımları uygulayın.
Başka bir USB kablonuz varsa:
- Cihazı ikincil kabloyu kullanarak bağlayın.
- Bağlantı Asistanı'nın cihazı algılayıp algılamadığını kontrol edin.
- Cihaz algılanmazsa birincil kabloyu tekrar deneyin.
- Cihaz hâlâ algılanmıyorsa sorunun cihazla ilgili olduğunu varsayın ve cihazın geliştirme için ayarlanıp ayarlanmadığını kontrol edin.
Başka bir USB kablonuz yoksa ancak başka bir Android cihazınız varsa:
- İkincil cihazı bilgisayarınıza bağlayın.
Bağlantı Asistanı ikincil cihazı algılayabiliyorsa sorunun birincil cihazda olduğunu varsayın ve cihazın geliştirme için ayarlanıp ayarlanmadığını kontrol edin.
İkincil cihaz algılanmıyorsa sorun USB kablosunda olabilir.
Cihazın geliştirme için ayarlanıp ayarlanmadığını kontrol etme
Sorunun cihazdaki ayarlardan kaynaklanıp kaynaklanmadığını kontrol etmek için aşağıdaki adımları uygulayın:
- Geliştirme için cihaz ayarlama bölümündeki adımları uygulayın.
- Bu işlem sorunu çözmüyorsa yardım almak için cihaz OEM'sinin müşteri desteğiyle iletişime geçin. Müşteri desteği temsilcisine cihazın ADB kullanarak Android Studio'ya bağlanmadığını söyleyin.
Kablosuz bağlantı sorunlarını çözme
Cihazınıza kablosuz olarak bağlanırken sorun yaşıyorsanız sorunu çözmek için aşağıdaki sorun giderme adımlarını deneyebilirsiniz:
İş istasyonunuzun ve cihazınızın ön koşulları karşılayıp karşılamadığını kontrol edin.
Kablosuz hata ayıklama için ön koşulları karşılamak üzere şunlardan emin olun:
- İş istasyonunuz ve cihazınız aynı kablosuz ağa bağlı olmalıdır.
- Cihazınızda Android 11 veya sonraki bir sürüm yüklü olmalıdır. Daha fazla bilgi için Android sürümünüzü kontrol etme ve güncelleme başlıklı makaleyi inceleyin.
- Android Studio'nun en son sürümüne sahip olmanız gerekir. Bu sürümü Android Studio'nun ana sayfasından indirebilirsiniz.
- İş istasyonunuzda SDK Platform Araçları'nın en son sürümü yüklü olmalıdır.
Bilinen diğer sorunları kontrol etme
Aşağıda, Android Studio'da kablosuz hata ayıklamayla ilgili mevcut bilinen sorunların listesi ve bunların nasıl çözüleceği açıklanmaktadır:
- Kablosuz ağa bağlanılamıyor: Bazı kablosuz ağlar (ör. kurumsal kablosuz ağlar) eşler arası bağlantıları engelleyebilir ve kablosuz ağ üzerinden bağlanmanıza izin vermeyebilir. Kabloyla veya başka bir kablosuz ağla bağlanmayı deneyin.
- Kablosuz üzerinden ADB bazen otomatik olarak devre dışı kalıyor: Bu durum, cihazın Wi-Fi ağları arasında geçiş yapması veya ağ bağlantısının kesilmesi halinde ortaya çıkabilir.
RSA güvenlik anahtarı
Android 4.2.2 (API düzeyi 17) veya sonraki sürümlerin yüklü olduğu bir cihazı bilgisayarınıza bağladığınızda sistem, bu bilgisayar üzerinden hata ayıklamaya izin veren bir RSA anahtarının kabul edilip edilmeyeceğini soran bir iletişim kutusu gösterir. Bu güvenlik mekanizması, cihazın kilidini açıp iletişim kutusunu onaylamadığınız sürece USB hata ayıklama ve diğer adb
komutları yürütülemediğinden kullanıcı cihazlarını korur.