我正在尝试在WiFi接口上实现一些QoS算法。
public class MYActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WifiManager MYManager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
WifiInfo MYInfo = MYManager.getConnectionInfo();
TextView MYLinkSpeed = new TextView(this);
MYLinkSpeed.setText(Integer.toString(MYInfo.getLinkSpeed()));
}
}
然而,在Eclipse控制台上,应用程序“强制关闭”并在Eclipse控制台上显示以下消息。
java.lang.SecurityException:WifiService:既不是用户10038也不是 当前进程有android.permission.ACCESS_WIFI_STATE。
使用“F8”功能启用/禁用Wi-Fi无济于事。 “使用权限”在清单中正确设置。
这是我的AndroidManifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="schemas.android.com/apk/res/android";
package="com.MY" android:versionCode="1" android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.wifi" />
<application>
<!-- ... -->
</application>
</manifest>
答案 0 :(得分:1)
将此添加到您的清单中,问题是如此明显,从日志中您没有wifi状态监听权限。
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />