android程序打开ttyUSB0无读权限

zjg2011zjg 2012-02-21 03:27:05


android下的程序想要读ttyUSB0,但是发现设备插入后,ttyUSB0的权限为crw-------,有高手出招吗?网上的方法试过在java代码中添加exec(“su”)获取root权限,但是执行不成功,用adb shell登陆时在app用户下不允许执行su命令。求高手指点!
...全文
800 10 打赏 收藏 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xqhrs232 2012-02-24
  • 打赏
  • 举报
回复
用SYSTEM命令试试,要不自己修改INIT.RC文件再去自己编译IMAGE
gotime_wxb2008 2012-02-24
  • 打赏
  • 举报
回复
看看是否是root权限问题,如果是权限问题简单 chmod 777即可;如果不是root权限,则需要厂家在对应的设备文件中,增加设备驱动,并相应的改变权限;这样就可以再以后的USB转串口中调用了!
zjg2011zjg 2012-02-23
  • 打赏
  • 举报
回复
不给力啊,这个问题打2010年就提出了,木有办法
zjg2011zjg 2012-02-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zjg2011zjg 的回复:]

引用 2 楼 taotaoqi82 的回复:

代码我看看



public boolean runRootCommand(String command) {
Log.d("run into runRootCommand ***", "siiiiiiiiiiiiiiiiiiii");
Process process = null;
DataOutputStream os = ……
[/Quote]



这俩文件都是没权限去修改啊
lbmygf 2012-02-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zjg2011zjg 的回复:]

引用 2 楼 taotaoqi82 的回复:

代码我看看



public boolean runRootCommand(String command) {
Log.d("run into runRootCommand ***", "siiiiiiiiiiiiiiiiiiii");
Process process = null;
DataOutputStream os = ……
[/Quote]


这样没用的 ,你当前进程并没有权限修改串口权限
lbmygf 2012-02-22
  • 打赏
  • 举报
回复
在init.rc中修改,或者在内核usb驱动中把它改过来
zjg2011zjg 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 taotaoqi82 的回复:]

代码我看看
[/Quote]


public boolean runRootCommand(String command) {
Log.d("run into runRootCommand ***", "siiiiiiiiiiiiiiiiiiii");
Process process = null;
DataOutputStream os = null;
try {
process = Runtime.getRuntime().exec("su");
os = new DataOutputStream(process.getOutputStream());
os.writeBytes(command+"\n");
os.writeBytes("exit\n");
os.flush();
process.waitFor();
} catch (Exception e) {
Log.d("*** DEBUG ***", "Unexpected error - Here is what I know: "+e.getMessage());
return false;
}
finally {
try {
if (os != null) {
os.close();
}
process.destroy();
} catch (Exception e) {
// nothing
}
}
return true;
}


if(!runRootCommand("chmod 666 /dev/ttyUSB0")){
runRootCommand("chmod 666 /dev/ttyUSB1");
};
zjg2011zjg 2012-02-21
  • 打赏
  • 举报
回复
public boolean runRootCommand(String command) {
Log.d("run into runRootCommand ***", "siiiiiiiiiiiiiiiiiiii");
Process process = null;
DataOutputStream os = null;
try {
process = Runtime.getRuntime().exec("su");
os = new DataOutputStream(process.getOutputStream());
os.writeBytes(command+"\n");
os.writeBytes("exit\n");
os.flush();
process.waitFor();
} catch (Exception e) {
Log.d("*** DEBUG ***", "Unexpected error - Here is what I know: "+e.getMessage());
return false;
}
finally {
try {
if (os != null) {
os.close();
}
process.destroy();
} catch (Exception e) {
// nothing
}
}
return true;
}


if(!runRootCommand("chmod 666 /dev/ttyUSB0")){
runRootCommand("chmod 666 /dev/ttyUSB1");
};
taotaoqi82 2012-02-21
  • 打赏
  • 举报
回复
代码我看看
zjg2011zjg 2012-02-21
  • 打赏
  • 举报
回复
咋个没人回呢?各位大大们,跪求啦
内容概要:本文研究了计及需求侧响应的日前、日内两阶段鲁棒备用优化问题,提出了一种基于数据驱动的两阶段分布鲁棒优化方法,结合1-范数和∞-范数构造不确定性集合,有效刻画风电、光伏出力及负荷等多重不确定因素的波动特性。研究构建了电热综合能源系统的联合优化模型,通过协调日前调度计划与日内实时调整,充分发挥需求侧响应资源的灵活调节能力,提升系统在不确定性环境下的备用充裕性与运行鲁棒性,并采用Matlab进行建模与仿真验证,结果表明该方法在保障系统安全的同时显著改善了经济性。; 适合人群:具备电力系统分析、优化理论基础及Matlab编程能力的研究生、科研人员,以及从事新型电力系统调度、综合能源系统规划与运行的工程技术人员。; 使用场景及目标:①应用于高比例可再生能源接入背景下电力系统备用容量的优化配置;②为综合能源系统在多重不确定性下的鲁棒调度提供决策支持;③支撑需求侧资源参与系统辅助服务的机制设计与仿真验证,推动源荷互动协调发展。; 阅读建议:建议读者结合Matlab代码深入理解两阶段鲁棒优化的建模过程,重点关注不确定性集构建、鲁棒约束转化及C&CG等求解算法的实现细节,可进一步拓展至其他分布鲁棒优化形式或耦合更多能源形式的综合能源系统场景。

80,489

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧