应该是权限的问题,当然可以在Mainfest里把相关网络操作的权限加上试试,如果不行用JNI做,再不行就说明ifconfig需要root权限了

解决方案 »

  1.   

    你试试分开设置IP,子网掩码
    还有你可在前面加条命令,先把eth0  启动  up
      

  2.   

    好像android里面不能直接用Linux命令 还是权限问题?
      

  3.   

    试过了,cmd直接输入可以执行,放到代码中就不行
      

  4.   

    各位有试过修改android设备的ip地址吗?是不是有些linux命令不能执行?跪求大神指导啊
      

  5.   

    adb connect 必须root后才可以,
      

  6.   

    亲。app的所在的用户组权限太低,已经被屏蔽了大部分的shell执行权限。如果你纯粹在app java要搞定,没办法的。
      

  7.   

    但是我在cmd中执行修改ip命令是可以的,把命令放到代码中就不能执行
      

  8.   


    LZ可以将当前的apk以 System用户权限预置到系统中  【也就是在manifest.xml中声明一个 ShareUserId属性】 会执行的~~
      

  9.   


    无论你的APK你用的是什么权限。APP的shell权限已经被限制死你,你在init.rc里面写个service,然后在apk里面调用启动这个service。这样是100%可以的。root权限的
      

  10.   

    有几种方法:
    1,同楼上的  直接用c写个服务,init.rc里面启动,init是root权限
    2,做成系统应用,将apk签名。java -jar signapk.jar  -w  testkey.x509.pem  testkey.pk8 you.apk sign.apk 然后安装
    在AndroidManifest.xml里面加 android:sharedUserId="android.uid.system" > 设为系统用户