Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.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 python脚本不起作用,但单个shell命令起作用_Android_Python_Shell_Adb_Android Uiautomator - Fatal编程技术网

Android python脚本不起作用,但单个shell命令起作用

Android python脚本不起作用,但单个shell命令起作用,android,python,shell,adb,android-uiautomator,Android,Python,Shell,Adb,Android Uiautomator,我试图运行这段python代码来学习如何使用uiautomator进行android测试 from uiautomator import device as d d(index = 2, className='android.widget.TextView').click() #menu button print 'inside menu button' d(text='People', className='android.widget.TextView').click() #contacts

我试图运行这段python代码来学习如何使用uiautomator进行android测试

from uiautomator import device as d
d(index = 2, className='android.widget.TextView').click() #menu button
print 'inside menu button'
d(text='People', className='android.widget.TextView').click() #contacts
print 'inside contacts'
#loop to add a contact  
d(resourceId= 'com.android.contacts:id/menu_add_contact', className='android.widget.TextView').click()
当我将此代码作为python脚本运行时,它不起作用
python add\u contact.py

但是,当我像这样按顺序运行它时

python #enters the shell 
from uiautomator import device as d
d(index = 2, className='android.widget.TextView').click() #menu button
d(text='People', className='android.widget.TextView').click() #contacts
d(resourceId= 'com.android.contacts:id/menu_add_contact', className='android.widget.TextView').click()

基本上,我所做的是进入pythonshell并逐个输入命令,而不是将其作为脚本运行。结果是,在脚本中没有按下通讯录图标,但手动输入它会起作用

显然我已经通过这个代码解决了这个问题

from uiautomator import device as d
d(index = 2, className='android.widget.TextView').click() #menu button
print 'inside menu button'
d(index='15', className='android.widget.TextView').click() #contacts
print 'inside contacts'
#loop to add a contact  
d(resourceId= 'com.android.contacts:id/menu_add_contact', className='android.widget.TextView').click()
这可能是一个滞后问题

通过改变

d(text='People', className='android.widget.TextView').click() #contacts
对此

d(index='15', className='android.widget.TextView').click() #contacts

“不工作”是什么意思?@Cyphase该命令不运行,但不运行时打印的内容是什么