2

会社で社内の voip システムを利用するために、Android 用のダイヤラ アプリを開発する必要があります。私はアンドロイドはまったく初めてですが、チタンの経験があります。

アプリは番号をキャプチャする必要があり、番号に対して特定のチェックを実行する必要があります。チェックの後、標準の電話アプリは番号をダイヤルする必要があります。

このアクティビティはユーザーの入力/決定で開始する必要があるため、ブロードキャストレシーバーの登録はオプションではありません

この場合、次のマニフェストがあります。

<activity android:name="CallerActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
        <intent-filter>
            <action android:name="android.intent.action.CALL_PRIVILEGED" /> 
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="tel" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.CALL" /> 
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="tel" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.CALL_BUTTON" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.CALL" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.item/phone" />
            <data android:mimeType="vnd.android.cursor.item/phone_v2" />
            <data android:mimeType="vnd.android.cursor.item/person" />
        </intent-filter>
    </activity>
</application>

それは期待どおりに機能します。アプリがダイヤル オプションとして表示されます。そして、私の活動では、次のコードを持っています:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    final Intent i = getIntent();
    final Uri number = i.getData();
    number = checkNumberInternal(number);

    Intent dial = new Intent(Intent.ACTION_CALL, number);
    dial.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(dial);
}

コードは実際に機能しますが、唯一の問題は、デフォルトのダイヤル オプション ダイアログが何度も表示されることです。

アプリはUIなしである必要があります

4

1 に答える 1

0

コードは問題ありません。マニフェスト ファイルのアプリケーション タグの直前に、以下のコードを使用します。デフォルトのコール オプション ポップアップを開かなくても問題なく動作します。まだ問題が見つかった場合はお知らせください。

<uses-permission android:name="android.permission.CALL_PHONE" />

于 2013-08-29T13:45:51.180 に答える