0

非表示にする必要があり、ユーザーが特定の番号をダイヤルしたときにのみ表示されるAndroidアプリがあります。それがどのように行われるかを正確に知ることができますか?私は検索しましたが、成功しませんでした。前もって感謝します。

4

1 に答える 1

1

ランチャーからアプリを完全に非表示にするには、最初にBroadcastRecieverを作成する必要があります。

   public class LaunchAppViaDialReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    // TODO Auto-generated method stub
    Bundle bundle = intent.getExtras();
    if (null == bundle)
        return;
    String phoneNubmer = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
    //here change the number to your desired number
    if (phoneNubmer.equals("<Requested Number>")) {
        setResultData(null);
        if(status == true){
            PackageManager packageManager = context.getPackageManager();
            ComponentName componentName = new ComponentName(context,
                    YourLauncherActivity.class);
            packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
                    PackageManager.DONT_KILL_APP);
            Intent appIntent = new Intent(context,    YourLauncherActivity.class);
            appIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(appIntent);
        }
    }
}

そして、権限を追加します:android.permission.PROCESS_OUTGOING_CALLSBroadcastRecieverをマニフェストファイルに追加します。

設定を使用してユーザーにゴーストモードを設定させることをお勧めします

于 2012-09-11T12:39:23.087 に答える