Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.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 关于向widget获取IP的咨询_Android - Fatal编程技术网

Android 关于向widget获取IP的咨询

Android 关于向widget获取IP的咨询,android,Android,我有一个小部件,我需要显示IP 我有这个给你看 public ShowIP() { try { WifiManager myWifiManager = (WifiManager)getSystemService(Context.WIFI_SERVICE); WifiInfo myWifiInfo = myWifiManager.getConnectionInfo(); int myIp = Math.abs(my

我有一个小部件,我需要显示IP

我有这个给你看

public ShowIP()
{
try
        {
         WifiManager myWifiManager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
            WifiInfo myWifiInfo = myWifiManager.getConnectionInfo();

            int myIp = Math.abs(myWifiInfo.getIpAddress());

            int intMyIp3 = myIp/0x1000000;
            int intMyIp3mod = myIp%0x1000000;

            int intMyIp2 = intMyIp3mod/0x10000;
            int intMyIp2mod = intMyIp3mod%0x10000;

            int intMyIp1 = intMyIp2mod/0x100;
            int intMyIp0 = intMyIp2mod%0x100;

            IP = String.valueOf(intMyIp0) + "." + String.valueOf(intMyIp1) + "." + String.valueOf(intMyIp2) + "." + String.valueOf(intMyIp3); //===V
        }
        catch (Exception ex)
        {
            IP = "Error Network";
        }
    }
在我的小部件中,我尝试调用ShowIP(),如下所示:

public class HelloWidget extends AppWidgetProvider {

    public String IP;

    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {

        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new MyTime(context, appWidgetManager), 1, 1000);
    }

    private class MyTime extends TimerTask {
        RemoteViews remoteViews;
        AppWidgetManager appWidgetManager;
        ComponentName thisWidget;
        DateFormat format = SimpleDateFormat.getTimeInstance(SimpleDateFormat.MEDIUM, Locale.getDefault());

    public MyTime(Context context, AppWidgetManager appWidgetManager) {
        this.appWidgetManager = appWidgetManager;
        remoteViews = new RemoteViews(context.getPackageName(), R.layout.main);
        thisWidget = new ComponentName(context, HelloWidget.class);
    }

    @Override
    public void run() {
                ShowIP();
        remoteViews.setTextViewText(R.id.widget_textview, IP);
        appWidgetManager.updateAppWidget(thisWidget, remoteViews);
    }


    @SuppressWarnings("unused")
    public  void pushWidgetUpdate(Context context, RemoteViews remoteViews) {
        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new MyTime(context, appWidgetManager), 1, 1000);
    }

    }

}
getSystemService
未识别单词的问题

怎么去呢


感谢

getSystemService()是一种上下文方法,您需要从您的活动或应用程序中获取适当的上下文。有关帮助,请参见如何操作?