2011-04-26 23 views

回答

1

試試這個...這將啓動相機,當你從端口5556

public class MySmsReceiver extends BroadcastReceiver { 
     private static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED"; 
     private String yourNumber = "5556"; 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     if (intent.getAction().equals(SMS_RECEIVED)) { 
      Log.v("MySMS", intent.getAction()); 
      Bundle bundle = intent.getExtras(); 
      if (bundle != null) { 
       Object[] pdus = (Object[]) bundle.get("pdus"); 
       final SmsMessage[] messages = new SmsMessage[pdus.length]; 
       for (int i = 0; i < pdus.length; i++) { 
        messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); 
       } 
       if (messages.length > -1) { 
        String no = messages[0].getDisplayOriginatingAddress(); 
        Log.v("MySMS", no); 
        if (no != null && no.trim().equals(yourNumber)) { 
         PackageManager manager = context.getPackageManager(); 
         Intent resultIntent = new Intent(); 
         resultIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
         resultIntent.setAction(Intent.ACTION_MAIN); 
         resultIntent.setComponent(new ComponentName(
           "com.android.camera", 
           "com.android.camera.Camera")); 
         ResolveInfo ri = manager.resolveActivity(resultIntent, 
           Intent.FLAG_ACTIVITY_NEW_TASK); 
         if (ri != null) { 
          context.startActivity(resultIntent); 
         } 
        } 
       } 
      } 
     } 
    } 
} 

收到的短信,不要忘了在你的清單文件中添加此權限

<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission> 
+0

喜約翰感謝我的快速反應,但嘗試過,但相機沒有啓動,你可以提供給我的相機類「com.android.camera.Camera」包。我認爲這是用戶定義的包,所以請提供我的相機類的細節,我也收到敬酒信息,我的應用程序正在關閉 – ramtej 2011-04-26 07:25:31

+0

請做必要的 – ramtej 2011-04-26 08:31:04

+0

嗨我的應用程序是強制關閉,當我收到任何短信端口5556可以請你幫我擺脫這種情況,它非常迫切。提前感謝 – ramtej 2011-04-27 06:18:19

相關問題