2014-12-18 5 views
0

Android Monkeyrunner 용 Java 플러그인을 작성하여 Wi-Fi 상태를 확인하려고합니다. Android API WiFiManager을 사용하여 현재 WiFi 상태를 가져 와서 다시 반환하고 싶습니다.Wifi 상태의 Android Monkeyrunner 플러그인

이클립스에서 오류 메시지는 다음과 같습니다 방법 getWifiState은() MonkeyWifi이

가 어떻게 코드는 현재 와이파이 상태를 확인 할 수 있도록 변경할 수 있습니다 유형에 대해 정의되지 ?

package com.my.android.wifi; 

import org.python.core.PyInteger; 
import org.python.core.PyObject; 
import org.python.core.PyString; 
import org.python.util.PythonInterpreter; 

import com.android.monkeyrunner.MonkeyDevice; 
import com.google.common.base.Predicate; 

import android.net.wifi.WifiManager; 

public class MonkeyWifi implements Predicate<PythonInterpreter> { 

public class NewActivity extends Activity { 
    WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
} 

public int WifiStatus(){ 
    int state; 
    state = wifiManager.getWifiState(); 
    return state; 
} 


@Override 
public boolean apply(PythonInterpreter arg0) { 
    return false; 
} 

} 당신은 WifiManager의 인스턴스를 생성해야합니다

답변

1

을 그러면 기본 Wi-Fi 정보에 액세스 할 수 있습니다.

기본 스크립트는 와이파이 상태가이 라인을 따라 빠른 응답

#! /usr/bin/env python 
# -*- coding: utf-8 -*- 

from com.dtmilano.android.viewclient import ViewClient 
from com.dtmilano.android.adb.adbclient import WIFI_SERVICE, WifiManager 


device, serialno = ViewClient.connectToDeviceOrExit() 
wifiManager = device.getSystemService(WIFI_SERVICE) 
print "wifi state:", wifiManager.getWifiState() 
0

:

내가 지금까지 가지고있는 코드입니다. this 페이지에 따르면, 당신은 호출하여 작업을 수행 할 수 있습니다

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); 

을 그리고 당신은에 의해 상태를 얻을 수 있습니다 : 당신은 AndroidViewClient 대신 (버전 8.26.0 이상)를 사용할 수 있습니다

state = wifiManager.getWifiState(); 
+0

감사 할 것입니다 확인합니다. 나는 Java에 익숙하지 않고 그것을 이해하려고 노력하고있다. 나는 당신의 의견에 따라 그것을 바 꾸었습니다. 다음 메시지가 나타납니다. getSystemService (String) 유형이 MonkeyWifi 유형에 대해 정의되지 않았습니다 – Empario

+0

메소드'getSystemService (String)'은'Activity' 클래스의 일부이므로 쉬운 해결책은'wifiManager' 인스턴스를 작성하는 것입니다 'Activity'를 확장 한 클래스 내부. – Bubletan

+0

코드는 어떻게 생겼을까요? – Empario