[英]How to change the IMEI number of a rooted android device via appium or adb?
[英]How to tell if android device detected by ADB?
通過USB連接時,我正在使用ADB將文件從Java應用程序推送到平板電腦。 我希望能夠檢測ADB是否通過USB連接了設備。 我用來推送文件的代碼是:
public void wiredsync(){
try {
abdsourcesync = buildpath;
adbtabletsync = "/mnt/sdcard/test";
System.out.println("Starting Sync via adb with command " + "adb" + " push "+ buildpath + " " + adbtabletsync);
Process process = Runtime.getRuntime().exec("adb" + " push "+ buildpath + " " + adbtabletsync);
InputStreamReader reader = new InputStreamReader(process.getInputStream());
Scanner scanner = new Scanner(reader);
scanner.close();
} catch(IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}//end wiredsync
如果未連接平板電腦,如何修改此代碼以解決問題?
謝謝您的幫助。
安迪
通過使用Eclipse插件也使用的ddmlib.jar,可以監視設備的connect / disconnect事件。 ddmlib通常位於Android SDK的tools / lib目錄中。 但是沒有有關如何使用它的官方文件。 下面是代碼示例。 您必須包括ddmlib.jar並根據您的環境更改adb位置。
import java.io.IOException;
import com.android.ddmlib.AndroidDebugBridge;
import com.android.ddmlib.AndroidDebugBridge.IDeviceChangeListener;
import com.android.ddmlib.IDevice;
public class Main {
public static void main(String[] args) throws IOException {
AndroidDebugBridge.init(false);
AndroidDebugBridge debugBridge = AndroidDebugBridge.createBridge("D:\\android-sdk\\platform-tools\\adb.exe", true);
if (debugBridge == null) {
System.err.println("Invalid ADB location.");
System.exit(1);
}
AndroidDebugBridge.addDeviceChangeListener(new IDeviceChangeListener() {
@Override
public void deviceChanged(IDevice device, int arg1) {
// not implement
}
@Override
public void deviceConnected(IDevice device) {
System.out.println(String.format("%s connected", device.getSerialNumber()));
}
@Override
public void deviceDisconnected(IDevice device) {
System.out.println(String.format("%s disconnected", device.getSerialNumber()));
}
});
System.out.println("Press enter to exit.");
System.in.read();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.