2012-05-09 58 views
0

我已經購買了新的android 4.0.3 tablet-Micromax Funbook P300來學習開發android應用程序。在Android 4.0中啓用Wifi直接連接

我開始使用Wifi Direct,因此平板電腦可以用作機器人平臺的遙控器。

令我失望的是,股票操作系統在設置菜單中沒有提供此功能。

是否可以檢查我們是否可以編程啓動wifi直接功能?

如果不是有人可以直接找到一些解決這個問題的教程嗎?

謝謝。

回答

-2

他並沒有要求一個編碼的程序例子,這麼多一種以編程方式開啓技術的方式(即一行代碼)。據我所知,沒有辦法做到這一點。這一切都必須從您的設備設置中完成。雖然有些設備允許開啓Wi-Fi Direct,但其他設備將其視爲與啓用常規Wi-Fi相同 - 您是否嘗試過?你有沒有檢查過P300是否支持Wi-Fi Direct?

+0

一個編碼的程序例子將告訴你如何使用wifi直接。不,不可能在一行代碼中直接使用wifi,但可以嘗試使用api直接使用wifi,然後根據日誌消息查看它是否受支持。另一個答案更有用。 –

0

WiFi Direct應該得到Android 4.0.3的支持(自從Android API 14或Android 4.0以來,它一直都在支持)。由於硬件限制,您的平板電腦可能不支持WiFi Direct,但我對此表示懷疑。您可能沒有在設置中看到它,因爲在平板電腦上運行的自定義Android外觀會阻止您看到它,或者直到Android 4.1或其他設備才能實現WiFi Direct設置界面。

無論如何,您可以在代碼中輕鬆測試。

首先,把正確的權限在你的manifest.xml

http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html#permissions

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.android.nsdchat" 
    ... 

    <uses-permission 
     android:required="true" 
     android:name="android.permission.ACCESS_WIFI_STATE"/> 
    <uses-permission 
     android:required="true" 
     android:name="android.permission.CHANGE_WIFI_STATE"/> 
    <uses-permission 
     android:required="true" 
     android:name="android.permission.INTERNET"/> 
    ... 

接下來,嘗試初始化的Android WiFiP2pManager類是否支持它。

http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.html

public void onCreate(Bundle savedInstanceState) { 
    WifiP2pManager manager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE); 
    WifiP2pManager.Channel channel = manager.initialize(this, getMainLooper(), null); 
} 

這裏我把空,你可以傳遞一個回調來檢查是否存在故障。如果有效,請按照Wi-Fi Direct guide的其餘部分創建您的應用。