2016-02-19 85 views
0

因此,我試圖找到一種方法,在條件之後如何開始新的活動。嘗試調用一個函數,但它不會工作。我希望有人能幫幫忙。我只是一個初學者,請尊重。收到短信後開始活動

if (bundle != null) { 
      Object[] pdus = (Object[]) bundle.get("pdus"); 
      msgs = new SmsMessage[pdus.length]; 
      for (int i = 0; i < msgs.length; i++) { 
       msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); 
       messageReceived += msgs[i].getMessageBody().toString(); 
       messageReceived += "\n"; 

      } 

      senderPhoneNumber = msgs[0].getOriginatingAddress(); 


     } 

     if ((messageReceived == "xxxxxx") && (senderPhoneNumber == "xxxxxxxxx")) { 

      //If these conditions are true I want to start a new Activity 
     } 
+2

使用'.equals()'爲字符串的內容比較開始Activity。 – Karakuri

+0

謝謝,但我的問題不是與條件,而是如何執行一項活動,如果兩個條件都是真的。 – Gentle

+3

如果您使用'=='而不是'.equals()',您的條件將始終評估爲「false」。 – Karakuri

回答

0

您可以通過使用onRecieve()方法方面參數

@Override 
    public void onReceive(Context context, Intent intent) { 
     //start activity 
     Intent i = new Intent(); 
     i.setClassName("com.example", "com.example.ActivityName"); 
     i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     context.startActivity(i); 
    } 
+0

會嘗試,謝謝! – Gentle