AndroidDebugBridge
public
class
AndroidDebugBridge
extends Object
| java.lang.Object | |
| ↳ | com.android.tradefed.device.server.AndroidDebugBridge |
Ana makine tarafındaki Android Debug Bridge'e (adb) bağlantı
Bu, cihazlar, emülatörler veya bunlar üzerinde çalışan uygulamalarla iletişim kurmak için kullanılan merkezi noktadır.
Herhangi bir işlem yapılmadan önce init() çağrılmalıdır.
Özet
İç içe yerleştirilmiş sınıflar | |
|---|---|
interface |
AndroidDebugBridge.IDebugBridgeChangeListener
Bu arayüzü uygulayan sınıflar, |
interface |
AndroidDebugBridge.IDeviceChangeListener
Bu arayüzü uygulayan sınıflar, |
Sabitler | |
|---|---|
int |
DEFAULT_START_ADB_TIMEOUT_MILLIS
ADB sunucusu başlatılırken kullanılan varsayılan zaman aşımı |
Alanlar | |
|---|---|
public
static
final
AdbVersion |
MIN_ADB_VERSION
Desteklenen minimum ve maksimum adb sürümü. |
Herkese açık yöntemler | |
|---|---|
static
void
|
addDebugBridgeChangeListener(AndroidDebugBridge.IDebugBridgeChangeListener listener)
Dinleyiciyi, |
static
void
|
addDeviceChangeListener(AndroidDebugBridge.IDeviceChangeListener listener)
Dinleyiciyi, bir |
static
AndroidDebugBridge
|
createBridge(String osLocation, boolean forceNewBridge, long timeout, TimeUnit unit)
Komut satırı aracının konumundan yeni bir hata ayıklama köprüsü oluşturur. |
static
AndroidDebugBridge
|
createBridge(long timeout, TimeUnit unit)
Belirli bir yürütülebilir dosyaya bağlı olmayan bir |
static
AndroidDebugBridge
|
createBridge(String osLocation, boolean forceNewBridge)
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine |
static
AndroidDebugBridge
|
createBridge()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine |
static
void
|
deviceChanged(IDevice device, int changeMask)
Dinleyiciyi değiştirilmiş bir |
static
void
|
deviceConnected(IDevice device)
Dinleyiciye yeni bir |
static
void
|
deviceDisconnected(IDevice device)
Dinleyiciyi bağlantısı kesilmiş bir |
static
void
|
disableFakeAdbServerMode()
|
static
void
|
disconnectBridge()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine |
static
boolean
|
disconnectBridge(long timeout, TimeUnit unit)
Mevcut hata ayıklama köprüsünün bağlantısını keser ve nesneyi yok eder. |
static
void
|
enableFakeAdbServerMode(int port)
|
static
ListenableFuture<AdbVersion>
|
getAdbVersion(File adb)
|
static
AndroidDebugBridge
|
getBridge()
Geçerli hata ayıklama köprüsünü döndürür. |
int
|
getConnectionAttemptCount()
|
static
int
|
getDebugBridgeChangeListenerCount()
|
static
int
|
getDeviceChangeListenerCount()
|
IDevice[]
|
getDevices()
Cihazları iade eder. |
ListenableFuture<List<AdbDevice>>
|
getRawDeviceList()
adb komut satırı tarafından bildirilen cihaz kümesini döndürür. |
int
|
getRestartAttemptCount()
|
static
InetSocketAddress
|
getSocketAddress()
Bu yöntem kullanımdan kaldırılmıştır.
Bu yöntem, ADB sunucusu tarafından kullanılanla eşleşmeyebilecek bir geri döngü sunucu adresi döndürür. Örneğin, JVM, IPv4 modunda olabilirken ADB sunucusu IPv6 geri döngü adresinde barındırılıyor olabilir. ADB sunucusuna bağlantı açarken |
static
ListenableFuture<String>
|
getVirtualDeviceId(ListeningExecutorService service, File adb, IDevice device)
|
boolean
|
hasInitialDeviceList()
Köprünün, oluşturulduktan sonra ilk listeyi adb'den alıp almadığını döndürür. |
static
void
|
init(AdbInitOptions options)
|
static
void
|
init(boolean useLibusb, Map<String, String> env)
|
static
void
|
init()
|
static
void
|
initIfNeeded()
Kitaplığı yalnızca gerektiğinde başlatır. Test dışı kullanımlar için desteği sonlandırılmıştır. |
boolean
|
isConnected()
|
static
boolean
|
isUserManagedAdbMode()
|
static
SocketChannel
|
openConnection()
Yerel Android hata ayıklama köprüsü sunucusuna bağlanmaya çalışır. |
static
void
|
removeDebugBridgeChangeListener(AndroidDebugBridge.IDebugBridgeChangeListener listener)
Yeni bir |
static
void
|
removeDeviceChangeListener(AndroidDebugBridge.IDeviceChangeListener listener)
|
boolean
|
restart(long timeout, TimeUnit unit)
adb'yi yeniden başlatır ancak etrafındaki hizmetleri yeniden başlatmaz. |
boolean
|
restart()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine |
boolean
|
startAdb(long timeout, TimeUnit unit)
adb ana makine tarafı sunucusunu başlatır. |
static
void
|
terminate()
ddm kitaplığını sonlandırır. |
Sabitler
DEFAULT_START_ADB_TIMEOUT_MILLIS
public static final int DEFAULT_START_ADB_TIMEOUT_MILLIS
ADB sunucusu başlatılırken kullanılan varsayılan zaman aşımı
Sabit Değer: 20000 (0x00004e20)
Alanlar
MIN_ADB_VERSION
public static final AdbVersion MIN_ADB_VERSION
Desteklenen minimum ve maksimum adb sürümü. Bu, //device/tools/adb/adb.h dosyasında bulunan ADB_SERVER_VERSION'a karşılık gelir.
Herkese açık yöntemler
addDebugBridgeChangeListener
public static void addDebugBridgeChangeListener (AndroidDebugBridge.IDebugBridgeChangeListener listener)
Dinleyiciyi, IDebugBridgeChangeListener arayüzünde tanımlanan mesajlardan birini göndererek yeni bir AndroidDebugBridge bağlandığında bildirilecek dinleyiciler koleksiyonuna ekler.
| Parametreler | |
|---|---|
listener |
AndroidDebugBridge.IDebugBridgeChangeListener: Bildirim gönderilecek dinleyici. |
addDeviceChangeListener
public static void addDeviceChangeListener (AndroidDebugBridge.IDeviceChangeListener listener)
Dinleyiciyi, bir IDevice bağlandığında, bağlantısı kesildiğinde veya özellikleri ya da ERROR(/ClientImpl) listesi değiştiğinde IDeviceChangeListener arayüzünde tanımlanan mesajlardan birini göndererek bilgilendirilecek dinleyiciler koleksiyonuna ekler.
| Parametreler | |
|---|---|
listener |
AndroidDebugBridge.IDeviceChangeListener: Bildirim gönderilecek dinleyici. |
createBridge
public static AndroidDebugBridge createBridge (String osLocation, boolean forceNewBridge, long timeout, TimeUnit unit)
Komut satırı aracının konumundan yeni bir hata ayıklama köprüsü oluşturur.
Konum aynı olmadığı ve
forceNewBridge false olarak ayarlanmadığı sürece mevcut tüm sunucuların bağlantısı kesilir.
| Parametreler | |
|---|---|
osLocation |
String: "adb" komut satırı aracının konumu |
forceNewBridge |
boolean: Aynı konuma sahip bir köprü zaten mevcut olsa bile yeni bir köprünün oluşturulmasını zorlar. |
timeout |
long: Maksimum bekleme süresi |
unit |
TimeUnit: timeout bağımsız değişkeninin zaman birimi |
| İadeler | |
|---|---|
AndroidDebugBridge |
bağlı bir köprü veya köprü oluşturulurken ya da köprüye bağlanırken hata oluştuysa null |
createBridge
public static AndroidDebugBridge createBridge (long timeout, TimeUnit unit)
Belirli bir yürütülebilir dosyaya bağlı olmayan bir AndroidDebugBridge oluşturur.
Bu köprü, adb'nin çalışmasını bekler. adb'yi başlatamaz, durduramaz veya yeniden başlatamaz.
Bir köprü başlatılmışsa değişiklik yapılmadan doğrudan döndürülür (getBridge() çağrılmasına benzer).
| Parametreler | |
|---|---|
timeout |
long |
unit |
TimeUnit |
| İadeler | |
|---|---|
AndroidDebugBridge |
bağlı bir köprü veya köprü oluşturulurken ya da köprüye bağlanırken hata oluştuysa null |
createBridge
public static AndroidDebugBridge createBridge (String osLocation, boolean forceNewBridge)
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine createBridge(String,boolean,long,TimeUnit) politikasını kullanın.
Komut satırı aracının konumundan yeni bir hata ayıklama köprüsü oluşturur.
Konum aynı olmadığı ve
forceNewBridge false olarak ayarlanmadığı sürece mevcut tüm sunucuların bağlantısı kesilir.
| Parametreler | |
|---|---|
osLocation |
String: "adb" komut satırı aracının konumu |
forceNewBridge |
boolean: Aynı konuma sahip bir köprü zaten mevcut olsa bile yeni bir köprünün oluşturulmasını zorlar. |
| İadeler | |
|---|---|
AndroidDebugBridge |
bağlı bir köprü veya köprü oluşturulurken ya da köprüye bağlanırken hata oluştuysa null |
createBridge
public static AndroidDebugBridge createBridge ()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine createBridge(long,TimeUnit) politikasını kullanın.
Belirli bir yürütülebilir dosyaya bağlı olmayan bir AndroidDebugBridge oluşturur.
Bu köprü, adb'nin çalışmasını bekler. adb'yi başlatamaz, durduramaz veya yeniden başlatamaz.
Bir köprü başlatılmışsa değişiklik yapılmadan doğrudan döndürülür (getBridge() çağrılmasına benzer).
| İadeler | |
|---|---|
AndroidDebugBridge |
bağlı bir köprü veya köprü oluşturulurken ya da köprüye bağlanırken hata oluştuysa null |
deviceChanged
public static void deviceChanged (IDevice device, int changeMask)
Dinleyiciyi değiştirilmiş bir IDevice hakkında bilgilendirin.
Dinleyicilerin bildirimi senkronize bir blokta yapılır. Dinleyicilerin, dahili kilitler kullanan getDevices()'nin yanı sıra çeşitli IDevice yöntemlerine erişebileceğini göz önünde bulundurmanız önemlidir.
| Parametreler | |
|---|---|
device |
IDevice: değiştirilen IDevice. |
changeMask |
int |
deviceConnected
public static void deviceConnected (IDevice device)
Dinleyiciye yeni bir IDevice bildirimi gönderin.
Dinleyicilerin bildirimi senkronize bir blokta yapılır. Dinleyicilerin, dahili kilitler kullanan getDevices()'nin yanı sıra çeşitli IDevice yöntemlerine erişebileceğini göz önünde bulundurmanız önemlidir.
| Parametreler | |
|---|---|
device |
IDevice: yeni IDevice. |
deviceDisconnected
public static void deviceDisconnected (IDevice device)
Dinleyiciyi bağlantısı kesilmiş bir IDevice hakkında bilgilendirin.
Dinleyicilerin bildirimi senkronize bir blokta yapılır. Dinleyicilerin, dahili kilitler kullanan getDevices()'nin yanı sıra çeşitli IDevice yöntemlerine erişebileceğini göz önünde bulundurmanız önemlidir.
| Parametreler | |
|---|---|
device |
IDevice: bağlantısı kesilmiş IDevice. |
disableFakeAdbServerMode
public static void disableFakeAdbServerMode ()
disconnectBridge
public static void disconnectBridge ()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine disconnectBridge(long,TimeUnit) politikasını kullanın.
Mevcut hata ayıklama köprüsünün bağlantısını keser ve nesneyi yok eder. createBridge(String,boolean) ile yeni bir nesne oluşturulması gerekir.
Bu işlem, mevcut adb ana makine sunucusunu da durdurur.
disconnectBridge
public static boolean disconnectBridge (long timeout,
TimeUnit unit)Mevcut hata ayıklama köprüsünün bağlantısını keser ve nesneyi yok eder. createBridge(String,boolean) ile yeni bir nesne oluşturulması gerekir.
Bu işlem, mevcut adb ana makine sunucusunu da durdurur.
| Parametreler | |
|---|---|
timeout |
long |
unit |
TimeUnit |
| İadeler | |
|---|---|
boolean |
true yöntemi, belirtilen zaman aşımı süresi içinde başarılı olursa. |
enableFakeAdbServerMode
public static void enableFakeAdbServerMode (int port)
| Parametreler | |
|---|---|
port |
int |
getAdbVersion
public static ListenableFuture<AdbVersion> getAdbVersion (File adb)
| Parametreler | |
|---|---|
adb |
File |
| İadeler | |
|---|---|
ListenableFuture<AdbVersion> |
|
getBridge
public static AndroidDebugBridge getBridge ()
Geçerli hata ayıklama köprüsünü döndürür. Hiç oluşturulmamışsa null olabilir.
| İadeler | |
|---|---|
AndroidDebugBridge |
|
getConnectionAttemptCount
public int getConnectionAttemptCount ()
AndroidDebugBridge nesnesinin adb arka plan programına bağlanmayı denediği sayısı döndürür.
| İadeler | |
|---|---|
int |
|
getDebugBridgeChangeListenerCount
public static int getDebugBridgeChangeListenerCount ()
| İadeler | |
|---|---|
int |
|
getDeviceChangeListenerCount
public static int getDeviceChangeListenerCount ()
| İadeler | |
|---|---|
int |
|
getRawDeviceList
public ListenableFuture<List<AdbDevice>> getRawDeviceList ()
adb komut satırı tarafından bildirilen cihaz kümesini döndürür. Bu özellik, esas olarak getDevices() listesinin durumunu başka bir kanal üzerinden doğrulaması gereken Bağlantı Asistanı veya diğer teşhis araçları için tasarlanmıştır. Yalnızca cihaz listesine erişmesi gereken kodlar bunun yerine getDevices() yöntemini çağırmalıdır.
| İadeler | |
|---|---|
ListenableFuture<List<AdbDevice>> |
|
getRestartAttemptCount
public int getRestartAttemptCount ()
AndroidDebugBridge nesnesinin adb arka plan programını yeniden başlatmayı deneme sayısını döndürür.
| İadeler | |
|---|---|
int |
|
getSocketAddress
public static InetSocketAddress getSocketAddress ()
Bu yöntem kullanımdan kaldırılmıştır.
Bu yöntem, ADB sunucusu tarafından kullanılanla eşleşmeyebilecek bir geri döngü sunucu adresi döndürür. Örneğin, JVM, IPv4 modunda olabilirken ADB sunucusu IPv6 geri döngü adresinde barındırılıyor olabilir. ADB sunucusuna bağlantı açarken openConnection()'ı tercih edin.
Ana makinedeki ADB sunucusunun soket adresini döndürür.
Bu yöntem, ADB sunucusuna bir soket kanalı açarak çalıştığı bilinen bir soket adresi döndürmeye çalışır. Hem IPv4 hem de IPv6 geri döngü adresi denenir. İkisinin de bağlanamadığı durumlarda bu yöntem, JVM tarafından tercih edilen geri döngü adresini döndürmeye geri döner. Bu yedek mantık, API'nin bozulmasını önlemek için gereklidir.
Sahte ADB sunucu modu etkinse bu yöntem, ADB'ye bağlanmaya çalışmadan otomatik olarak eski uygulamaya geri döner.
| İadeler | |
|---|---|
InetSocketAddress |
|
getVirtualDeviceId
public static ListenableFuture<String> getVirtualDeviceId (ListeningExecutorService service,
File adb,
IDevice device)| Parametreler | |
|---|---|
service |
ListeningExecutorService |
adb |
File |
device |
IDevice |
| İadeler | |
|---|---|
ListenableFuture<String> |
|
hasInitialDeviceList
public boolean hasInitialDeviceList ()
Köprünün, oluşturulduktan sonra ilk listeyi adb'den alıp almadığını döndürür.
createBridge(String,boolean)'den hemen sonra getDevices()'yı çağırmak genellikle boş bir liste ile sonuçlanır. Bunun nedeni, adb ile dahili olarak kullanılan ve getDevices() çağrılmadan önce IDevice listesinin oluşturulmasını garanti etmeyen eşzamansız iletişim mekanizmasıdır.
IDevice nesnelerinin listesini almanın önerilen yolu, IDeviceChangeListener nesnesi oluşturmaktır.
| İadeler | |
|---|---|
boolean |
|
init
public static void init (AdbInitOptions options)
init() özelliğine benzer. Ortam değişkenlerinin özel bir grubunu iletme olanağı sunar.
| Parametreler | |
|---|---|
options |
AdbInitOptions |
init
public static void init (boolean useLibusb,
Map<String, String> env)init() ile benzerdir. libusb'yi etkinleştirme ve özel bir env. grubu iletme özelliği vardır.
değişkenler.
| Parametreler | |
|---|---|
useLibusb |
boolean |
env |
Map |
init
public static void init ()
ddm kitaplığını başlatır.
Bu işlev, createBridge(String,boolean) işlevine yapılan herhangi bir çağrıdan önce bir kez çağrılmalıdır.
ddmlib tercihlerinin de varsayılan değerlerden değiştirilen varsayılan değerlerle başlatılması gerekir.
Uygulama kapatıldığında terminate() çağrılmalıdır.
initIfNeeded
public static void initIfNeeded ()
Kitaplığı yalnızca gerektiğinde başlatır. Test dışı kullanımlar için desteği sonlandırılmıştır.
Ayrıca bkz.:
isConnected
public boolean isConnected ()
AndroidDebugBridge nesnesinin adb arka plan programına bağlı olup olmadığını döndürür.
| İadeler | |
|---|---|
boolean |
|
isUserManagedAdbMode
public static boolean isUserManagedAdbMode ()
| İadeler | |
|---|---|
boolean |
ddmlib'in ADB sunucusunu yönetmediği ve yönetmemesi gereken, kullanıcı tarafından yönetilen ADB modunda çalışıyorsa. |
openConnection
public static SocketChannel openConnection ()
Yerel Android hata ayıklama köprüsü sunucusuna bağlanmaya çalışır.
| İadeler | |
|---|---|
SocketChannel |
Başarılı olursa bağlı bir soket |
| Verdiği hatalar | |
|---|---|
IOException |
bağlantı açılırken hata oluşursa |
removeDebugBridgeChangeListener
public static void removeDebugBridgeChangeListener (AndroidDebugBridge.IDebugBridgeChangeListener listener)
Yeni bir AndroidDebugBridge başlatıldığında bilgilendirilecek dinleyiciler koleksiyonundan dinleyiciyi kaldırır.
| Parametreler | |
|---|---|
listener |
AndroidDebugBridge.IDebugBridgeChangeListener: Artık bildirim gönderilmemesi gereken dinleyici. |
removeDeviceChangeListener
public static void removeDeviceChangeListener (AndroidDebugBridge.IDeviceChangeListener listener)
IDevice bağlandığında, bağlantısı kesildiğinde veya özellikleri ya da ERROR(/ClientImpl) listesi değiştiğinde bilgilendirilecek dinleyiciler koleksiyonundan dinleyiciyi kaldırır.
| Parametreler | |
|---|---|
listener |
AndroidDebugBridge.IDeviceChangeListener: Artık bildirim gönderilmemesi gereken dinleyici. |
restart
public boolean restart (long timeout,
TimeUnit unit)adb'yi yeniden başlatır ancak etrafındaki hizmetleri yeniden başlatmaz.
| Parametreler | |
|---|---|
timeout |
long |
unit |
TimeUnit |
| İadeler | |
|---|---|
boolean |
başarılıysa doğru. |
restart
public boolean restart ()
Bu yöntem kullanımdan kaldırılmıştır.
ADB yanıt vermiyorsa bu yöntem askıda kalabilir. Bunun yerine restart(long,TimeUnit) politikasını kullanın.
adb'yi yeniden başlatır ancak etrafındaki hizmetleri yeniden başlatmaz.
| İadeler | |
|---|---|
boolean |
başarılıysa doğru. |
startAdb
public boolean startAdb (long timeout,
TimeUnit unit)adb ana makine tarafı sunucusunu başlatır. Sunucu yaşam döngüsü ddmlib tarafından değil, kullanıcı tarafından yönetilmesi gerektiğinden, kullanıcı tarafından yönetilen ADB sunucusu kullanılırken bu yöntem kullanılmamalıdır.
| Parametreler | |
|---|---|
timeout |
long |
unit |
TimeUnit |
| İadeler | |
|---|---|
boolean |
Başarılıysa doğru |
feshetmek (legal context) : kapatmak (for more generic context)
public static void terminate ()
ddm kitaplığını sonlandırır. Bu, uygulama sonlandırıldığında çağrılmalıdır.