2015-08-11 3 views
0

Я хотел бы запустить скрытое приложение с набором номера. Поскольку у псевдонима активности нет класса java, следующий код не работает. Запуск нормальной работы работает нормально. Может ли кто-нибудь сказать мне, как запустить псевдоним активности с помощью набора номера?Запустить приложение, используя dailpad и псевдоним активности

public class MyOutgoingCallHandler extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
    // Extract phone number reformatted by previous receivers 
    String phoneNumber = getResultData(); 
    if (phoneNumber == null) { 
     // No reformatted number, use the original 
     phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); 
    } 

     if(phoneNumber.equals("1234")){ // DialedNumber checking. 
     // My app will bring up, so cancel the broadcast 
     setResultData(null); 

     // Start my app 
     Intent i=new Intent(context,MainActivity.class); 
     i.putExtra("extra_phone", phoneNumber); 
     i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     context.startActivity(i); 
     } 

} 

} 

ответ

0

Я понял это прямо сейчас. Этот код работает:

public class MyOutgoingCallHandler extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     // Extract phone number reformatted by previous receivers 
     String phoneNumber = getResultData(); 
     if (phoneNumber == null) { 
      // No reformatted number, use the original 
      phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); 
     } 

     if(phoneNumber.equals("1234")){ // DialedNumber checking. 
      // My app will bring up, so cancel the broadcast 
      setResultData(null); 

      // Start my app 
      Intent i = new Intent(); 
      String packageName = context.getPackageName(); 
      ComponentName componentName = new ComponentName(packageName, 
        packageName + "your_ALIAS_ACTIVITY"); 
      i.setComponent(componentName); 

      i.putExtra("extra_phone", phoneNumber); 
      i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
      context.startActivity(i); 
     } 

    } 

} 
Смежные вопросы