Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Bash ADB使用变量调用应用程序_Android_Bash_Adb - Fatal编程技术网

Android Bash ADB使用变量调用应用程序

Android Bash ADB使用变量调用应用程序,android,bash,adb,Android,Bash,Adb,我有一个应用程序,当被调用时,它会将调用时使用的字符串输出到toast通知中 像这样: am start -a android.intent.action.MAIN -e message "Example String" -n com.rja.utility/.ShowToast 我想创建一个for循环,它将循环.txt文件中的槽行,并使用上面的方法输出它们,如下所示: for i in `cat /somedirectory/ToastQueue.txt`; do am start

我有一个应用程序,当被调用时,它会将调用时使用的字符串输出到toast通知中

像这样:

am start -a android.intent.action.MAIN -e message "Example  String" -n com.rja.utility/.ShowToast
我想创建一个for循环,它将循环.txt文件中的槽行,并使用上面的方法输出它们,如下所示:

for i in `cat /somedirectory/ToastQueue.txt`; do
    am start -a android.intent.action.MAIN -e message "$i" -n com.rja.utility/.ShowToast > dev/null
done
但显然,这不起作用,它抱怨我有额外的参数

所以我的问题是,我怎样才能做到这一点?我无法修改应用程序,因此这一切都应该通过shell或ADB来完成,因此我让它正常工作:

for i in `cat /somedirectory/ToastQueue.txt`; do
    i="\"$i\""
    eval "am start -a android.intent.action.MAIN -e message $i -n com.rja.utility/.ShowToast > dev/null"
done

如果消息中有空格,则必须引用它,但不能在EVE中引用它,否则它将退出它,然后在传递给应用程序之前引用它。

我会尝试在循环之前添加<代码> SET-X/CODE >,这样您就可以看到变量扩展后执行的是什么,如果您的答案解决了问题,请考虑接受它。当它让我;D