1、动态加载:
DexClassLoader dcl = new DexClassLoader( "/sdcard/dex.apk", "/sdcard/dexout/", null, super.getClassLoader()); Class c = dcl.loadClass("com.package.MyClass" ); Object myObj = c.newInstance();
2、三行代码获取特定广播的所有接收者
Intent intent = new Intent("android.provider.Telephony.SMS_RECEIVED"); intent.addFlags(Intent.FLAG_DEBUG_LOG_RESOLUTION); sendBroadcast(intent);然后查看log
3、pc和android usb通讯:端口转发
adb forward tcp:55555 tcp:5556命令。把发往本地监听55555端口的数据转发到模拟器里的监听端口5556.
其实就是socket通信 不同的是android与pc端通信需要端口映射 通过adb forward 本机发送端口号,android端映射端口 就可以向本机指定发消息再转发到android端
4、替换默认程序
http://stackoverflow.com/questions/5029183/android-dialer-application
SensorManager sensorMgr=(SensorManager) getSystemService(Context.SENSOR_SERVICE); SensorEventListener sEventListener=new SensorEventListener() { @Override public void onSensorChanged(SensorEvent event) { float x = event.values[SensorManager.DATA_X]; float y = event.values[SensorManager.DATA_Y]; float z = event.values[SensorManager.DATA_Z]; setTitle(" x="+x+","+"y="+y+","+"z="+z); } @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { } }; //注册重力感应监听 sensorMgr.registerListener(sEventListener, sensorMgr.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),SensorManager.SENSOR_DELAY_GAME);