2010-12-16 7 views
0

「Wi-Fi設定」(設定/ワイヤレス設定)で入力するときに、自分の設定アプリを起動します。私のアプリケーションを起動するインテントフィルターを作成するときに問題が発生する

自分のアプリのために
<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> 

は、私が作成したインテントフィルタはこれです:アンドロイドのソースコードに設定アプリのAndroidManifest.xmlをチェック...そのWifiSettings活動のために作成されたインテントフィルタはこれです:

<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> 

何らかの理由でこれが機能しません。私は何かを逃していると私は何がわからない。助言がありますか?

ありがとうございました!

答えて

0

"android.settings.WIFI_SETTINGS"という文字列を 'android'で始まらないものに変更してみてください(プラットフォーム以外のアプリの場合は、 'android.settings.WIFI_SETTINGS'アンドロイド 'プレフィックス)。それを 'com.foo.WIFI_SETTINGS'に変更し、 'com.foo.WIFI_SETTINGS'を使用してアクティビティを起動し、役立つかどうかを確認してください。

0

実際には、設定アプリは特定のコンポーネント名(インテント{act = android.settings.SETTINGS flg = 0x10200000 cmp = com.android.settings/.Settings})で起動されます。だからあなたは自分のものと置き換えることはできません。

関連する問題