一、网络adb
1.1、device\rockchip\common\init.rk30board.rc
# for Internet adb
on property:netadb.status=true
setprop service.adb.tcp.port 5555
restart adbd
# for Internet adb
on property:netadb.status=false
setprop service.adb.tcp.port 0
restart adbd
1.2、连接
adb connect 192.168.1.1:5555adb disconnect192.168.1.1
切回usb模式 adb usb
三、仙逆
3.1、AndroidMainfest.xml
3.2、activity_main.xml
3.3、MainActivity.java
packagecom.gatsby.zebra;importandroid.app.Activity;importandroid.content.Intent;importcom.android.xhapimanager.XHApiManager;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.TextView;public class MainActivity extends Activity implementsOnClickListener {private String TAG = "Gatsby";
XHApiManager apimanager;privateTextView state, ip;privateButton btn1, btn2;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
apimanager= newXHApiManager();
state=(TextView) findViewById(R.id.textView1);
ip=(TextView) findViewById(R.id.textView2);
btn1=(Button) findViewById(R.id.btn1);
btn2=(Button) findViewById(R.id.btn2);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
state.setText("EthernetStat: " + apimanager.XHEthernetState() + "");
ip.setText("EthernetIP: " +apimanager.XHEthernetGetIP());
}
@Overridepublic voidonClick(View v) {//TODO Auto-generated method stub
switch(v.getId()) {caseR.id.btn1:
Intent intentY= newIntent();
intentY.setAction("com.gatsby.action.MCU_WIFI_ADB_Y");
sendBroadcast(intentY);break;caseR.id.btn2:
Intent intentN= newIntent();
intentN.setAction("com.gatsby.action.MCU_WIFI_ADB_N");
sendBroadcast(intentN);break;
}
}
}
3.4、ZebraReceiver.java
packagecom.gatsby.zebra;importjava.io.DataInputStream;importjava.io.DataOutputStream;importandroid.content.BroadcastReceiver;importandroid.content.Context;importandroid.content.Intent;importandroid.util.Log;public class ZebraReceiver extendsBroadcastReceiver {private final String MCU_WIFI_ADB_Y = "com.gatsby.action.MCU_WIFI_ADB_Y";private final String MCU_WIFI_ADB_N = "com.gatsby.action.MCU_WIFI_ADB_N";
@Overridepublic voidonReceive(Context context, Intent intent) {//TODO Auto-generated method stub
if(MCU_WIFI_ADB_Y.equals(intent.getAction())) {
Log.e("gatsby", "MCU_WIFI_ADB_Y ");
RootCommand("stop adbd");
RootCommand("setprop service.adb.tcp.port 5555");
RootCommand("start adbd");
}else if(MCU_WIFI_ADB_N.equals(intent.getAction())) {
Log.e("gatsby", "MCU_WIFI_ADB_N ");
RootCommand("stop adbd");
RootCommand("setprop service.adb.tcp.port 0");
RootCommand("start adbd");
}
}private voidRootCommand(String cmd) {
Process process= null;
DataOutputStream os= null;
DataInputStream is= null;try{
process= Runtime.getRuntime().exec("su");
os= newDataOutputStream(process.getOutputStream());
os.writeBytes(cmd+ "\n");
os.writeBytes("exit\n");
os.flush();int aa =process.waitFor();
is= newDataInputStream(process.getInputStream());byte[] buffer = new byte[is.available()];
is.read(buffer);
String out= newString(buffer);//Log.d(TAG, out + aa);
} catch(Exception e) {
e.printStackTrace();
}finally{try{if (os != null) {
os.close();
}if (is != null) {
is.close();
}
process.destroy();
}catch(Exception e) {
}
}
}
}
原文:https://www.cnblogs.com/crushgirl/p/12994258.html