14.01.2013 Views

Android™ Application Development - Bahar Ali Khan

Android™ Application Development - Bahar Ali Khan

Android™ Application Development - Bahar Ali Khan

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 9: Peer-to-Peer Communication<br />

302<br />

};<br />

}<br />

}<br />

}<br />

Object[] pdus = (Object[]) bundle.get(“pdus”);<br />

SmsMessage[] messages = new SmsMessage[pdus.length];<br />

for (int i = 0; i < pdus.length; i++)<br />

messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);<br />

for (SmsMessage message : messages) {<br />

if (message.getMessageBody().toLowerCase().contains(queryString)) {<br />

requestReceived(message.getOriginatingAddress());<br />

}<br />

}<br />

public void requestReceived(String _from) {}<br />

8. Update the onCreate method of the Emergency Responder Activity to register the Broadcast<br />

Receiver created in Step 7.<br />

@Override<br />

public void onCreate(Bundle icicle) {<br />

super.onCreate(icicle);<br />

setContentView(R.layout.main);<br />

}<br />

lock = new ReentrantLock();<br />

requesters = new ArrayList();<br />

wireUpControls();<br />

IntentFilter filter = new IntentFilter(SMS_RECEIVED);<br />

registerReceiver(emergencyResponseRequestReceiver, filter);<br />

9. Update the requestReceived method stub so that it adds the originating number of each<br />

status request’s SMS to the “requesters” Array List.<br />

public void requestReceived(String _from) {<br />

if (!requesters.contains(_from)) {<br />

lock.lock();<br />

requesters.add(_from);<br />

aa.notifyDataSetChanged();<br />

lock.unlock();<br />

}<br />

}<br />

10. The Emergency Responder Activity should now be listening for status request SMS messages<br />

and adding them to the List View as they arrive. Start the application and use the DDMS<br />

emulator control to simulate incoming SMS messages, as shown in Figure 9-4.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!