我还是android的新手,请有人帮忙。
我想使用 Net 类中的方法,如下所示:
package com.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.widget.TextView;
public class MyApp extends Activity {
/** Called when the activity is first created. */
private Net wifi;
TextView textStatus;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
wifi=new Net(this);
textStatus = (TextView) findViewById(R.id.text);
textStatus.append("Your online status is ");
if (wifi.isOnline()) {
textStatus.append("online "+wifi.getInfo());
} else {
textStatus.append("offline "+wifi.getInfo());
}
}
}
和我的网络课程:
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.IBinder;
public class Net {
WifiManager wifi;
ConnectivityManager cm;
NetworkInfo netInfo;
public Net (Context ctx) {
cm = (ConnectivityManager) ctx.getSystemService(ctx.CONNECTIVITY_SERVICE);
netInfo = cm.getActiveNetworkInfo();
wifi = (WifiManager) ctx.getSystemService(Context.WIFI_SERVICE);
}
public boolean isOnline() {
netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
} else {
return false;
}
}
public NetworkInfo[] getName() {
NetworkInfo[] name=cm.getAllNetworkInfo();
return name;
}
public String getInfo() {
// Get WiFi status
WifiInfo info = wifi.getConnectionInfo();
return info.getSSID().toString();
}
}
我相信我不应该使用Activity扩展我的Net类?我在运行应用程序时遇到源代码未找到错误。
答案 0 :(得分:3)
我相信我不应该扩展我的 有活动的网络课程?
正确!
您的 Net 类只是帮助,因此可以简单地定义为:
public class Net {
public Net (Context ctx) {
cm = (ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE);
netInfo = cm.getActiveNetworkInfo();
}
// Your other methods here...
}
创建wifi
对象时,请使用wifi = new Net(this);
Android中的Activity类用于为视觉/交互元素(如按钮,文本视图等)提供UI框架 - 基本上是用户需要与之交互的任何内容。这不适合您的 Net 类。