Android 如何在python脚本(MonkeyRunner脚本)中设置访问WIFI API的权限
我正在编写Android 如何在python脚本(MonkeyRunner脚本)中设置访问WIFI API的权限,android,python,monkeyrunner,Android,Python,Monkeyrunner,我正在编写MonkeyRunner脚本来检查wifi的状态并启用它 为此,我导入了android API及其类。下面是代码片段 from android.net.wifi import WifiManager 全球国家 state = WifiManager.isWifiEnabled() 打印状态 执行时,我得到一个错误,如下所示: state = WifiManager.isWifiEnabled() TypeError: isWifiEnabled(): expected 1 arg
MonkeyRunner
脚本来检查wifi的状态并启用它
为此,我导入了android API及其类。下面是代码片段
from android.net.wifi import WifiManager
全球国家
state = WifiManager.isWifiEnabled()
打印状态
执行时,我得到一个错误,如下所示:
state = WifiManager.isWifiEnabled()
TypeError: isWifiEnabled(): expected 1 args; got 0
然后我意识到我需要进行wifi操作的权限,并在他们使用的一些AndroidManifest.XML
文件中找到了它
user-permission android:name="android.permission.ACCESS_WIFI_STATE"
我的疑问是,我正在真实的设备上运行脚本,如何使用它
user-permission android:name="android.permission.ACCESS_WIFI_STATE"
在我的MonkeyRunner
脚本文件中
是否有任何方法可以使用python脚本文件中的android.Manifest.permission
类来设置权限
提前谢谢
Surendra是android SDK的一部分,它只包含SDK类的存根实现,而不包含真实设备上的实现
此外,如果我们认为它包含了真正的实现,那么您将无法执行您想要的操作,因为您的
monkeyrunner
脚本是在您的开发计算机上运行的,而不是在设备上运行的,因此,如果你足够幸运地找到一个工作正常的WifiManager
,你将改变你的主机Wifi设置。没有回答你的问题,但你的目标工作正常
如果您只想检查wifi是否启用,您可以使用以下代码:-
import re
import os
def is_wifi_enabled(deviceid):
wifistate = os.popen('adb -s %s shell getprop wlan.driver.status'%deviceid).read()
wifion=re.search(r'ok',wifistate)
return wifion
is_wifi_enabled(deviceid)
我不确定所有的android设备,我已经在一些设备上试过了。你导入了android.jar吗?是的,从android sdk windows\platforms\android-17平台文件夹中,我导入了android.jar,并将其保存在android sdk windows\tools文件夹中,monkeyrunner.bat和我的脚本文件都存在其中。你的意思是WifiManager.isWifiEnabled()是否在my dev m/c中执行而不是在设备上?并获取一个错误,因为TypeError isWifiEnabled()预期为1个参数,而实际为0。在这里,我不明白为什么在函数原型没有任何参数的情况下,它还需要一个参数。使用一些MonkeyRunner命令,可以在真实设备上打开主设置菜单,然后Wifi设置在哪里可以切换Wifi。在这里,我想在切换Wifi之前制作脚本以检查Wifi状态。如果我无法使用WifiManager,请告诉我是否有任何方法可以检查状态。我在中找到了这个。monkey工具直接在设备或模拟器上的adb shell中运行,并生成用户和系统事件的伪随机流。相比之下,monkeyrunner工具通过从API发送特定命令和事件,从工作站控制设备和模拟器。根据这个猜测,我应该能够使用WifiManager。你能帮我摆脱这个错误吗?这是最重要的部分:“通过发送特定命令从工作站…”嗨,米兰,在切换之前monkeyrunner工具中有没有其他方法来测试Wifi/Bluetooth的状态?幸运的一天,看看AndroidViewClient的一个例子:它可能就是你正在寻找的。。。