Android Open Source - SNISI-droid S M S Receiver






From Project

Back to project page SNISI-droid.

License

The source code is released under:

Apache License

If you think the Android project SNISI-droid listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.yeleman.snisidroid;
//from   www. j  av a2  s  .  co  m
import android.content.SharedPreferences;
import android.os.Bundle;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.preference.PreferenceManager;
import android.util.Log;
import android.telephony.SmsMessage;

import java.util.ArrayList;

public class SMSReceiver extends BroadcastReceiver
{
    private static final String TAG = Constants.getLogTag("SMSReceiver");

    private SMSUpdater mSmsUpdater;

    public SMSReceiver(SMSUpdater u)
    {
        super();
        mSmsUpdater = u;
        Log.d(TAG, "SMSReceiver instanciated");
    }

    public void onReceive(Context context, Intent intent)
    {
        Log.d(TAG, "OnReceive called.");

        SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
        String serverNumber = sharedPrefs.getString("serverPhoneNumber", Constants.server_number);

        Bundle bundle=intent.getExtras();
        Object[] messages=(Object[])bundle.get("pdus");

        ArrayList<SmsMessage> smsMessages = new ArrayList<SmsMessage>();

        for(Object messageBytes : messages) {
            SmsMessage anSms = SmsMessage.createFromPdu((byte[]) messageBytes);
            // check if sender is the server
            if (anSms.getOriginatingAddress().replace("+223", "")
                     .equals(serverNumber.replace("+223", ""))) {
                smsMessages.add(anSms);
            }
        }

        // only notify updater is there are actual messages
        if (smsMessages.size() > 0) {
            mSmsUpdater.gotSms(smsMessages);
        }
    }
}




Java Source Code List

com.yeleman.nutrition.NutritionHome.java
com.yeleman.nutrition.NutritionInputsReportData.java
com.yeleman.nutrition.NutritionInputsReport.java
com.yeleman.nutrition.NutritionMonthlyHome.java
com.yeleman.nutrition.NutritionMonthlyReportData.java
com.yeleman.nutrition.NutritionSummaryReport.java
com.yeleman.nutrition.NutritionURENAMExsamReport.java
com.yeleman.nutrition.NutritionURENAMO59Report.java
com.yeleman.nutrition.NutritionURENAMPWReport.java
com.yeleman.nutrition.NutritionURENAMReportData.java
com.yeleman.nutrition.NutritionURENAMReport.java
com.yeleman.nutrition.NutritionURENAMU23O6Report.java
com.yeleman.nutrition.NutritionURENAMU59O23Report.java
com.yeleman.nutrition.NutritionURENASO59Report.java
com.yeleman.nutrition.NutritionURENASReportData.java
com.yeleman.nutrition.NutritionURENASReport.java
com.yeleman.nutrition.NutritionURENASU59O6Report.java
com.yeleman.nutrition.NutritionURENFormIface.java
com.yeleman.nutrition.NutritionURENForm.java
com.yeleman.nutrition.NutritionURENIO59Report.java
com.yeleman.nutrition.NutritionURENIReportData.java
com.yeleman.nutrition.NutritionURENIReport.java
com.yeleman.nutrition.NutritionURENIU59O6Report.java
com.yeleman.nutrition.NutritionURENIU6Report.java
com.yeleman.nutrition.NutritionWeeklyReportData.java
com.yeleman.nutrition.NutritionWeeklyReport.java
com.yeleman.projetsnisi.ApplicationTest.java
com.yeleman.smir.Constants.java
com.yeleman.smir.CustomOnItemSelectedListener.java
com.yeleman.smir.SMIRAlert.java
com.yeleman.smir.SMIRHome.java
com.yeleman.smir.SharedChecks.java
com.yeleman.snisidroid.ChangePassword.java
com.yeleman.snisidroid.CheckedFormActivity.java
com.yeleman.snisidroid.Constants.java
com.yeleman.snisidroid.Popups.java
com.yeleman.snisidroid.Preferences.java
com.yeleman.snisidroid.ReportData.java
com.yeleman.snisidroid.SMSDeliveredReceiver.java
com.yeleman.snisidroid.SMSReceiver.java
com.yeleman.snisidroid.SMSSentReceiver.java
com.yeleman.snisidroid.SMSUpdater.java
com.yeleman.snisidroid.SNISIAbout.java
com.yeleman.snisidroid.SNISIApp.java
com.yeleman.snisidroid.SNISIHome.java
com.yeleman.snisidroid.SharedChecks.java