2010-02-25 3 views

ответ

1

Не с текущей SDK нет, Вы можете контролировать входящие вызовы и дать пользователю возможность ответить с приложением вместо родного приложения

+0

Как пользователю предлагается выбрать приложение для ответа с помощью намеренного пользователя? Спасибо за помощь. – pgsandstrom

+0

Да, вы можете зарегистрироваться, чтобы выслушать это намерение и начать свое приложение с этого намерения. –

4

Да, вы можете блокировать входящие вызовы. Использование этого кода

String phonestate = bundle.getString(TelephonyManager.EXTRA_STATE); 

try 
    { 
     if (TelephonyManager.EXTRA_STATE_RINGING.equalsIgnoreCase(phonestate)) 
     { 
      try 
      { 
       TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); 
       Class c = Class.forName(tm.getClass().getName()); 
       Method m = c.getDeclaredMethod("getITelephony"); 
       m.setAccessible(true); 
       telephonyService = (com.android.internal.telephony.ITelephony) m.invoke(tm); 
      } 
      catch (Exception e) 
      { 
       e.printStackTrace(); 
      } 

      if (prefStatus != null) 
      { 
       if (count == 1) 
       { 
        telephonyService.endCall(); 
        String prefLoginemail = myloginpref.getString("emailid", null); 
        System.out.println(printdata + " prefLoginemail :: "+ prefLoginemail); 

        Global.mNotificationManager = (NotificationManager) mxcontext.getSystemService(Context.NOTIFICATION_SERVICE); 
        notifyDetails = new Notification(com.CellPhoneTerror.R.drawable.icon1,"CellPhoneTerror!", System.currentTimeMillis()); 
        myIntent = PendingIntent.getActivity(mxcontext, 0, new Intent(mxcontext, clsHomePage.class), 0); 

        notifyDetails.setLatestEventInfo(mxcontext,"You Got a Call from Blocked Number.", "",myIntent); 
        notifyDetails.flags |= Notification.FLAG_AUTO_CANCEL; 
        Global.mNotificationManager.notify(Global.SIMPLE_NOTFICATION_ID,notifyDetails); 

       } 
      } 
     } 
     if (prefIncomingBlock.equals("true")) 
     { 
      if (TelephonyManager.EXTRA_STATE_IDLE.equalsIgnoreCase(phonestate)) 
      { 
       if (count == 0) 
       { 
        System.out.println("if Cellphoneterror:"+ Global.clsIncomingNum); 
        Intent block = new Intent(context, dialogbox1.class); 
        block.setFlags(intent.FLAG_ACTIVITY_NEW_TASK); 
        context.startActivity(block); 
       } 
      } 
     } 
    } 
    catch (Exception e) 
    { 
     e.printStackTrace(); 
    } 

Спасибо.

+0

-1 Я думаю, это довольно, что искатель хотел знать, как это сделать. – Elemental

+0

Извините, но моя сеть была отключена, поэтому я не смог привести здесь пример. В любом случае Спасибо за комментарий. – anddev

+0

Как вы можете избежать задержки, а иногда и одного или двух колец до ее блокировки? – powder366

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