不匹配的输入' as'期待在dtmilano viewclient.py中的CLONE

时间:2015-05-20 06:17:42

标签: android python windows jython androidviewclient

我是python,Cmonkeyrunner和android的新手。 我正在尝试自动化Android应用程序并使用dtmilano AndroidViewClient

我在Windows 8上安装了python 2.7.9,将AndroidViewClient-master.zip解压缩到C盘,之后我使用easy_install安装了android viewclient 当我使用monkeyrunner运行一个简单的py脚本时,我收到错误 不匹配的输入' as'期待在dtmilano viewclient.py中的CLONE

我的代码如下:

    ! /usr/bin/env monkeyrunner
    import re
    import sys
    import os
    import java
    import glob
    import os


    sys.path.append('C:\AndroidViewClient-master\src')
    from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
    from com.dtmilano.android.viewclient import ViewClient

    try:
        ANDROID_VIEW_CLIENT_HOME = os.environ['ANDROID_VIEW_CLIENT_HOME']
    except KeyError:
        print >>sys.stderr, "%s: ERROR: ANDROID_VIEW_CLIENT_HOME not set in environment" % __file__
        sys.exit(1)

    device= MonkeyRunner.waitForConnection(15)
mydir=r'C:\Android SDK\adt-bundle-windows\sdk\tools'

apk_path = device.shell('pm path com.sample.test')
if apk_path.startswith('package:'):
    print "Test app is already installed."
else:
    print "Test app is not installed, installing..."
    os.chdir(mydir)
    MonkeyRunner.sleep(1)
    app = "Test.apk"
    device.installPackage(mydir+"/"+app)
    MonkeyRunner.sleep(5)

print "Launching Resource Test app"
device.startActivity(component='com.sample.test/com.sample.test.MainActivity')
MonkeyRunner.sleep(5)

我的路径变量是:

C:\Android SDK\adt-bundle-windows\sdk\tools;C:\Python27;C:\Python27\Scripts

请告诉我这里有什么不对吗? 我是否需要安装不同版本的python。

这是我得到的错误:

C:\Users\Desktop>monkeyrunner test1.py
150520 11:10:35.203:S [main] [com.android.monkeyrunner.MonkeyRunnerOptions] Script terminated due to an exception
150520 11:10:35.203:S [main] [com.android.monkeyrunner.MonkeyRunnerOptions]Traceback (most recent call last):
  File "C:\Android SDK\adt-bundle-windows\sdk\tools\test1.py", line 12, in <module>
    from com.dtmilano.android.viewclient import ViewClient
SyntaxError: ("mismatched input 'as' expecting COLON", ('C:\\AndroidViewClient-master\\src\\com\\dtmilano\\android\\viewclient.py', 3708, 35, ''))

C:\Users\Desktop>

test1.py中的第12行是:

from com.dtmilano.android.viewclient import ViewClient

第3708行是viewclient.py:

except ImportError as ex:

请帮忙。

1 个答案:

答案 0 :(得分:0)

根据我的个人经验,您应该使用easy_install和pypi安装AndroiviewClient,这是python包的官方站点,AndroidViewClient也经常在那里更新,你应该只使用github的包进行开发,对于任何进一步的AndroidViewClient更新,只需键入easy_install --upgrade AndroidViewClient:
1)转到你的Python文件夹并输入:easy_install AndroiViewClient,它将自动从http://pypi加载AndroidViewClient ...,该软件包将在文件夹C:\ Python27 \ Lib \ site-packages \ androidviewclient-10.4中设置.0-py2.7.egg(这是我目前的版本)
2)从github下载包,并将其设置在任何你想要的地方,没有easy_install或其他任何东西,只需解压缩即可。我只是使用这个包测试python check-import.py,如wiki所示,程序check-import.py仅存在于此包中。
3)如果我记得很清楚,我甚至不需要为AndroidViewClient设置任何环境变量,只需将Python文件夹添加到环境变量路径中即可。
4)启动Culebra,看看生成的脚本是怎么样的,它会在开始时简化你的生活,理解结构,如果你在开始时使用Culebra就不会看到像monkeyrunner这样的错误,这只是一个例子。