2

私の質問は、android.intent.action.CALL_PRIVILEGED を使用せずに、アプリケーションを Android のデフォルトの Dialer 選択に追加するにはどうすればよいですか?

今、私は以下のコードを使用していますが、これはうまくいきます:

<intent-filter>
    <action android:name="android.intent.action.CALL_PRIVILEGED" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:scheme="tel" />
</intent-filter>

Google が最近投稿した方法: http://productforums.google.com/forum/#!topic/mobile/wXqnbynsL8Y

そして、インテント android.intent.action.CALL_PRIVILEGED を使用するプログラムにこれをメールしました:

問題: アプリケーションで通話をルーティングすることを選択した場合、アプリケーションのユーザーは、システムの電話ダイヤラーを介して緊急電話をかけることができない場合があります。ドキュメントに記載されているように、CALL_PRIVILEGED インテント アクションをリッスンするアプリケーションは、システムからの緊急サービス コールをインターセプトしますが、適切にルーティングできない場合があります。CALL_PRIVILEGED は制限付き API であり、緊急通報を適切にルーティングできないサードパーティ アプリケーション内での使用を意図していないことに注意してください。

解決策:
• Java コードと AndroidManifest.xml のインテント フィルターから CALL_PRIVILEGED を削除します。• Google Play のリストの説明を更新して、アプリをデフォルトのダイヤラーとして使用すると 911 緊急サービスへのダイヤルに干渉する可能性があるという記述を含めます。

最も簡単な解決策は削除することですが、アプリケーションは機能を使用します。しかし、デフォルトの Dialer 選択にアプリケーションを追加する別の方法はありますか? しかし、CALL_PRIVILEGED インテントなしで?

前もって感謝します

デフォルトのダイヤラーの選択

デフォルトの Dialer 選択のほんの一例

編集:

私が使用する他の意図:

 <intent-filter>
            <action android:name="android.intent.action.CALL_BUTTON" />
                <category android:name="android.intent.category.DEFAULT" />
                 <data android:scheme="tel"/>
            </intent-filter>

             <intent-filter>
                <action android:name="android.intent.action.DIAL" />
                <category android:name="android.intent.category.DEFAULT" />
                 <data android:scheme="tel"/>
            </intent-filter>
4

3 に答える 3

3
         <intent-filter>
            <action android:name="android.intent.action.CALL_PRIVILEGED" />                
            <category android:name="android.intent.category.LAUNCHER" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="tel" />
         </intent-filter>

さらに重要なことは、uri の「tel」としてのデータを含むインテント フィルターで、特権呼び出しアクションが必要であるということです。また、許可タグの下には、電話を許可する必要があります。カテゴリランチャーのコードにありません。

<uses-permission android:name="android.permission.CALL_PHONE" />
于 2013-06-18T17:35:29.387 に答える