I solved it.
Thank you for your replies.

On Aug 2, 3:20 pm, Robinns <librain.ro...@gmail.com> wrote:
> 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>ro...@hotmail.com.np=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 android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to