2012-05-09 3 views
0

J'ai acheté une nouvelle tablette Android 4.0.3 Micromax Funbook P300 pour apprendre à développer des applications Android.Activation de Wifi directement dans Android 4.0

J'ai commencé avec Wifi Direct, de sorte que la tablette puisse être utilisée comme télécommande pour une plate-forme robotique.

À ma grande déception, le système d'exploitation en stock n'offre pas cette fonction dans le menu des paramètres.

Est-il possible de vérifier si nous pouvons démarrer par programme la fonction directe de wifi?

Si quelqu'un ne peut pas directement à certains tutoriels qui aborde cela?

Merci.

Répondre

-2

Il ne demande pas un exemple de programme codé, tant que un moyen d'activer la technologie par programmation (c'est-à-dire une ligne de code). Autant que je sache, il n'y a aucun moyen de le faire. Tout doit être fait depuis les paramètres de vos appareils. Alors que certains appareils permettent à Wi-Fi Direct d'être allumé, d'autres appareils le traitent de la même manière qu'une connexion Wi-Fi standard - avez-vous essayé? Et avez-vous vérifié si le P300 prend même en charge Wi-Fi Direct?

+0

un exemple de programme codé vous montrera comment utiliser le wifi direct. non, il n'est pas possible d'utiliser le wifi directement dans une ligne de code, mais il est certainement possible d'essayer d'utiliser le wifi directement en utilisant l'API, puis de voir si elle est supportée ou pas, compte tenu des messages du journal. l'autre réponse est beaucoup plus utile. –

0

WiFi Direct devrait être pris en charge par Android 4.0.3 (il a été autour depuis Android API 14, ou Android 4.0). Il est possible que votre tablette ne supporte pas WiFi Direct en raison d'une limitation matérielle, mais j'en doute. Vous ne le voyez probablement pas dans les paramètres car il existe un habillage Android personnalisé sur la tablette qui vous empêche de le voir, ou peut-être que l'interface des paramètres WiFi Direct n'a pas été implémentée avant Android 4.1 ou quelque chose comme ça. Quoi qu'il en soit, vous pouvez facilement le tester dans le code.

D'abord, mettre les autorisations appropriées dans votre 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"/> 
    ... 

Ensuite, essayez d'initialiser la classe Android WiFiP2pManager pour voir si elle est prise en charge.

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); 
} 

Là où je mets nulle, vous pouvez passer un rappel pour vérifier l'échec. Si cela fonctionne, suivez le reste de la Wi-Fi Direct guide pour créer votre application.