我在的Android和就是一個完整的小白的Java,我已經與C++和一個小C#的工作。 我試圖創建一個簡單的Android應用程序,它連接到一個無線網絡網絡。問題在於在addNetwork()函數中崩潰。WiFi的連接應用程序崩潰(Java和Android)
import android.net.ConnectivityManager;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
final WifiConfiguration wc = new WifiConfiguration();
String networkSSID = "********";
String networkPass = "*******";
wc.SSID = "\"" + networkSSID + "\"";
wc.preSharedKey = "\""+ networkPass +"\"";
wc.hiddenSSID = true;
wc.status = WifiConfiguration.Status.ENABLED;
wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
wc.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
int res = wifi.addNetwork(wc);
wifi.enableNetwork(res, true);
wifi.setWifiEnabled(true);
ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
}
}
我正在使用的Eclipse項目與目標2.3.3版本的Android(我的手機是2.3.6)。我必須在這裏包含除導入之外的其他文件(MainActivity.java)嗎?
編輯:回答此問題this答案。 對我的其他問題的回答()我的網絡列表中添加了相應的SSID,但當我101%確定它是'不在範圍內'時,因爲那是我的路由器!你知道什麼可能會消失嗎?錯誤的?)和完整的如何爲WiFi連接here。
我對Manifest一無所知,我無法在項目中找到它的代碼。 – Bonnev
你走了,我編輯了答案,更詳細地解釋它。 –
謝謝!我找到了它,並將該行標記在標記的正上方,但結果相同,該應用在其打開期間崩潰 –
Bonnev