2010-12-16 237 views
0

Je souhaite lancer ma propre application de paramètres lorsque j'entre dans "Paramètres Wi-Fi" (Paramètres/Paramètres sans fil). Vérification de l'AndroidManifest.xml de l'application des paramètres dans le code source Android ... le filtre intention créé pour cette activité de WifiSettings est la suivante:problème lors de la création d'un filtre d'intention pour lancer mon application

<activity android:name=".wifi.WifiSettings" 
       android:label="@string/wifi_settings" 
       android:configChanges="orientation|keyboardHidden" 
       android:clearTaskOnLaunch="true" 
       > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <action android:name="android.settings.WIFI_SETTINGS" /> 
       <action android:name="android.net.wifi.PICK_WIFI_NETWORK" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
       <category android:name="android.intent.category.VOICE_LAUNCH" /> 
       <category android:name="com.android.settings.SHORTCUT" /> 
      </intent-filter> 
</activity> 

Pour ma propre application, le filtre intention que j'ai créé est la suivante:

<activity android:name=".MyWifiSettings" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <action android:name="android.settings.WIFI_SETTINGS" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 

Pour une raison quelconque, cela ne fonctionne pas. Il me manque quelque chose et je ne sais pas quoi. Aucune suggestion?

Merci à l'avance !!

Répondre

0

Vous pouvez essayer de changer la chaîne "android.settings.WIFI_SETTINGS" en quelque chose qui ne commence pas par 'android' (parce que si vous êtes une application non-plateforme, vous pourriez ne pas être autorisé à utiliser le ' préfixe android '). Essayez de le changer en 'com.foo.WIFI_SETTINGS' puis lancez l'activité en utilisant 'com.foo.WIFI_SETTINGS' juste pour voir si ça aide.

0

En fait, l'application settings est lancée via un nom de composant particulier (Intent {act = android.settings.SETTINGS flg = 0x10200000 cmp = com.android.settings/.Settings}). Vous ne pouvez donc pas le remplacer par le vôtre.