Dear,

I am pasting my code here.

-------------------------------------------------------------------
public class Inbox extends ActivityGroup {
private ArrayList<InboxEmailDAO> inboxEmails = new
ArrayList<InboxEmailDAO>();
 private ListView listView;
private ArrayList<View> trackViews;
private InboxAdapter inboxAdapter;
 private String previewEmailFrom = "";
private String previewEmailSubject = "";
 private int previewEmailId;
private TextView smsMessage;

@Override
 public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
 requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.inbox);
 Bundle bundle = new Bundle();
bundle = getIntent().getExtras();
boolean isRecieved = false;

if (bundle != null) {
isRecieved = bundle.getBoolean("smsRecievedForInbox");

}

trackViews = new ArrayList<View>();
 smsMessage = (TextView) findViewById(R.id.smsMessage);
listView = (ListView) findViewById(R.id.inboxEmailList);

if (isRecieved) {
smsMessage.setWidth(-5);
smsMessage.setHeight(-5);

}
inboxEmails = InboxEmailDAO.parseContentForInboxEmails();
 inboxAdapter = new InboxAdapter(getApplicationContext(), inboxEmails);
listView.setAdapter(inboxAdapter);
 listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
((InboxAdapter) inboxAdapter).notifyDataSetChanged();
 trackViews.add(listView);
listView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> adapterView, View view,
 int position, long id) {
Intent intent = new Intent(getApplicationContext(),
 EmailPreview.class);
previewEmailId = inboxEmails.get(position).getId();
 previewEmailFrom = inboxEmails.get(position).getFrom();
previewEmailSubject = inboxEmails.get(position).getSubject();
 holdData(previewEmailId, previewEmailFrom, previewEmailSubject);

Bundle bundle = new Bundle();
 bundle.putInt("emailId", previewEmailId);
bundle.putString("from", previewEmailFrom);
 bundle.putString("subject", previewEmailSubject);
bundle.putInt("TAB_INDEX", 1);
 intent.putExtras(bundle);

InboxAdapter.setInboxViewMode(2);
 View emailView = getLocalActivityManager().startActivity(
"EmailPreview",
 intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
.getDecorView();
 Toast.makeText(getApplicationContext(),
"Sending to Preview: " + previewEmailId,
 Toast.LENGTH_LONG).show();
trackViews.add(emailView);
replaceView(emailView);

}
});
}
 @Override
public void onStart(){
 super.onStart();
IntentFilter filter = new IntentFilter(SMSInfo.SMS_FOR_INBOX);
 registerReceiver(new SMSRecieverForInbox(), filter);
}
@Override
 public void onStop(){
super.onStop();
unregisterReceiver(new SMSRecieverForInbox());
 }
  @Override
public void onBackPressed() {

}

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
 menu.clear();
MenuInflater inflater = getMenuInflater();
int mode = InboxAdapter.getInboxViewMode();
 if (mode == 1) {
inflater.inflate(R.menu.inbox_menu_after_edit, menu);
 } else if (mode == -1) {
menu.clear();
inflater.inflate(R.menu.inbox_menu, menu);
 } else {
menu.clear();
inflater.inflate(R.menu.inbox_email_preview_menu, menu);
 }
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

switch (item.getItemId()) {
case R.id.inboxEdit:
if (listView.getCount() < 0) {
 Toast.makeText(getApplicationContext(), "No emails to edit.",
Toast.LENGTH_LONG).show();
 break;
}
if (InboxAdapter.getInboxViewMode() == -1) {
 listView.setAdapter(new InboxAdapter(getApplicationContext(),
inboxEmails));
 InboxAdapter.setInboxViewMode(1);
}
break;
 case R.id.inboxRefresh:
sendSmsToRetrieveEmail("inbox");
break;
 case R.id.inboxNext:
 break;
 case R.id.inboxPrevious:
 break;
 case R.id.inbox_menu_after_edit_delete:

deleteAfterEditEmailList();
 break;
case R.id.inbox_menu_after_edit_cancel:
clearCheckedItems();
 break;
case R.id.email_preview_menu_delete:

break;

case R.id.email_preview_menu_reply:
 break;
 default:
break;
}

return false;
}

private void clearCheckedItems() {
 for (int i = 0; i < this.inboxAdapter.getCount(); i++) {
LinearLayout linearyLay = (LinearLayout) this.listView
 .getChildAt(i);
CheckBox checkBox = (CheckBox) linearyLay
.findViewById(R.id.inboxCheckBoxId);
 if (checkBox.isChecked()) {
checkBox.setChecked(false);
}
 }
((InboxAdapter) inboxAdapter).notifyDataSetChanged();
}

private void deleteAfterEditEmailList() {
Toast.makeText(getBaseContext(), "I am checking", Toast.LENGTH_SHORT)
 .show();
SparseBooleanArray booleanArray = listView.getCheckedItemPositions();
 for (int i = 0; i < listView.getCount(); i++) {
if (booleanArray.get(i))
 Toast.makeText(getBaseContext(), " the selected index is " + i,
Toast.LENGTH_SHORT).show();
 }
}




public void replaceView(View view) {
 setContentView(view);

}

private void holdData(int emailId, String from, String sub) {
 this.previewEmailId = emailId;
this.previewEmailFrom = from;
this.previewEmailSubject = sub;

}

private void sendSmsToRetrieveEmail(String inbox) {
 PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0,new
Intent(SMSInfo.SENT), 0);
PendingIntent deliveryIntent = PendingIntent.getBroadcast(this, 0,new
Intent(SMSInfo.DELIVERED), 0);
 SmsManager.getDefault().sendTextMessage("5554", null, inbox,sentIntent,
deliveryIntent);
 <------ here inbox is one keyword
// IntentFilter filter = new IntentFilter(SMSInfo.RECIEVED_SMS);
 //filter.addAction(SMSInfo.SMS_FOR_INBOX);
Toast.makeText(getApplicationContext(), "Sending sms to retrieve inbox
emails list.", Toast.LENGTH_LONG).show();
 registerReceiver(new SMSRecieverForInbox(), filter);
//onStart();
 }


}
----------------------------------------------------------------------------
public class SMSRecieverForInbox extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

if (intent.getAction().equals(SMSInfo.RECIEVED_SMS)) {
Bundle bundle = intent.getExtras();
 SmsMessage[] smsMessage = null;
String msg = "";
if (bundle != null) {
 Object[] pdus = (Object[]) bundle.get("pdus");
smsMessage = new SmsMessage[pdus.length];
 for (int i = 0; i < smsMessage.length; i++) {
smsMessage[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
 msg += smsMessage[i].getMessageBody();
}
if (msg != null ) {
 Toast.makeText(context, "SMS FOR INBOX" + msg,
Toast.LENGTH_LONG).show();

InboxEmailDAO.setSMSAsEmailToParse(msg);
Intent i = new Intent(context, EmailClient.class);
 Bundle extras = new Bundle();
extras.putBoolean("SMS_RECIEVED_FOR_INBOX", true);
 extras.putInt("TAB_INDEX", 2);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 i.putExtras(extras);
//context.sendBroadcast(i);
context.startActivity(i);
 return;
}
}

}
this.abortBroadcast();
}
}
------------------------------------------------------------

public class InboxEmailDAO {
private int id;
 private String from = "";
private String subject = "";
 private String date = "";
private String content = "";
private static String recievedMessageFromSMS = "";

public InboxEmailDAO() {
}

public String getContent() {
 return content;
}

public void setContent(String content) {
 this.content = content;
}

public String getDate() {
 return date;
}

public void setDate(String date) {
 this.date = date;
}

public int getId() {
 return id;
}

public void setId(int id) {
 this.id = id;
}

public String getFrom() {
 return from;
}

public void setFrom(String from) {
 this.from = from;
}

public String getSubject() {
 return subject;
}

public void setSubject(String subject) {
 this.subject = subject;
}

public static String setSMSAsEmailToParse(String message) {
 return recievedMessageFromSMS = message;
}
public static ArrayList<InboxEmailDAO> parseContentForInboxEmails() {
 ArrayList<InboxEmailDAO> emailList = new ArrayList<InboxEmailDAO>();
InboxEmailDAO ee = null;
 if (recievedMessageFromSMS != null) {
//1=<Robin Thapa>[email protected]=My Subject=July 26,2011=Lets meet and
discuss
 recievedMessageFromSMS = recievedMessageFromSMS.trim();
String[] splittedMsg = recievedMessageFromSMS.split("=");
 int size = splittedMsg.length / 3;
for (int i = 0; i < size; i++) {
 if (splittedMsg[0] != "") {
ee = new InboxEmailDAO();
ee.setId(Integer.valueOf(splittedMsg[i * 3 + 0].toString()));
 ee.setFrom(splittedMsg[i * 3 + 1]);
ee.setSubject(splittedMsg[i * 3 + 2]);
 emailList.add(ee);
}
}
 }
return emailList;
}

}
--------------------------------------------------

I am not being able to view my broadcastReciever.
Any suggestions

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to