小编Joo*_*Kim的帖子

android adb shell权限被拒绝

我一直在使用adb.exe.

我想使用adb.exe与bash相同的shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)

更改bash二进制文件遵循以下顺序

  1. adb remount
  2. adb push bash /system/bin/

  3. adb shell

  4. cd /system/bin
  5. chmod 777 bash
  6. mv sh sh.bak
  7. ln -s bash sh

第一次更改成功,但第二次尝试时出现问题.

我推新bash二进制文件,但我错过了更改bash的权限777,并断开连接adb shell.

C:\Program Files (x86)\Android\android-sdk\platform-tools>adb.exe shell
- exec '/system/bin/sh' failed: Permission denied (13) -

C:\Program Files (x86)\Android\android-sdk\platform-tools>
Run Code Online (Sandbox Code Playgroud)

有没有明智的想法来解决这个权限问题?

请帮我...

shell android adb

6
推荐指数
1
解决办法
3万
查看次数

如何在Android设备上禁用"air command"?

嗨,我使用手写笔(例如三星笔)开发了一个应用程序.如您所知,当我们单击手写笔上的按钮时,会出现"Air command"(弹出窗口).我的目标是" 空中命令覆盖到我的自定义函数中 "

首先,我从*SpenHoverListener开始"(由Samsung Spen SDK 5.0支持)并覆盖onHover函数,如下所示.

private SpenHoverListener mHoverListener = new SpenHoverListener() {
    @Override
    public boolean onHover(View view, MotionEvent event) {
        Log.e("Test",""+event.getButtonState());
        updateHoverUI(event.getRawX(), event.getRawY(), event.getPressure(), event.getAction(), "Hover");
        return true;
    }
};
Run Code Online (Sandbox Code Playgroud)

我可以成功监控按钮单击事件(单击BUTTON_STYLUS_PRIMARY =>按钮).但是,我无法禁用空中命令.

有没有办法禁用空中命令

最好的祝福.

android android-event samsung-mobile stylus-pen

6
推荐指数
1
解决办法
4088
查看次数

Python <p = Popen(["command"],stdout = PIPE)>当p.stdout.read(-1)被阻止时

你好我在Python子进程模块中有问题

我想与子进程交互(例如:child的stdin,stdout)

这是子程序的代码

  1 #include <stdio.h>
  2 
  3 int main(){
  4         char buf[1024];
  5         printf("asdfsadfasff\n");
  6         scanf("%s",buf);
  7         printf("%s\n",buf);
  8 }
Run Code Online (Sandbox Code Playgroud)

这段代码非常简单,打印字符串,等待输入,打印输入字符串

接下来,python代码如下

  1 #!/usr/bin/python
  2 from subprocess import *
  3 
  4 fd = Popen(["./random"],stdin=PIPE,stdout=PIPE)
  5 print "pid = %d"%(fd.pid) # print pid
  6 result = ""
  7 result = fd.stdout.read(-1) # read
  8 print result
  9 fd.stdin.write("write write write!!!\n")
 10 result = fd.stdout.read(-1)
 11 print result
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我预计这个程序将运行良好,但在第7行(fd.stdout.read(-1)被阻止,从未工作

我更改了读取函数的参数(读取(-1),读取(1),读取(),读取(1024))但是一切都不起作用

但是,当我首先在stdin中给出字符串时,程序工作了.

我认为当程序结束时,孩子的stdout缓冲区没有填充......这只是我的意见

这个问题有什么解决方案吗?

EDIT1.当我首先执行打印字符串的程序,并等待用户的输入,如"sudo su"这很好用,我期待

我不明白为什么这个案子运作良好

  1 from subprocess import * …
Run Code Online (Sandbox Code Playgroud)

python subprocess stdout popen

2
推荐指数
1
解决办法
1841
查看次数