Example usage for android.content Context unregisterReceiver

List of usage examples for android.content Context unregisterReceiver

Introduction

In this page you can find the example usage for android.content Context unregisterReceiver.

Prototype

public abstract void unregisterReceiver(BroadcastReceiver receiver);

Source Link

Document

Unregister a previously registered BroadcastReceiver.

Usage

From source file:org.universAAL.android.proxies.ServiceCalleeProxy.java

/**
 * Sends the response back to the service bus.
 * // ww  w. j a  va  2s  . c  o m
 * @param msg
 *            The message that originated the call.
 * @param sr
 *            The response to return.
 */
private void sendResponse(final BusMessage msg, final ServiceResponse sr) {
    // First, since we already have the response (good or bad), remove the receiver
    Context ctxt = contextRef.get();
    if (ctxt != null) {
        if (receiver != null) {
            ctxt.unregisterReceiver(receiver);
            receiver = null;
        }
    }
    // Then send back the response
    sr.setProperty(ServiceRealization.uAAL_SERVICE_PROVIDER, new Resource(busResourceURI));
    BusMessage reply = msg.createReply(sr);
    if (reply != null) {
        ((ServiceBus) theBus).brokerReply(busResourceURI, reply);
    }
}

From source file:com.lemon.lime.MainActivity.java

private void getBatteryPercentage() {
    BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) {
            context.unregisterReceiver(this);
            int currentLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
            int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);

            if (currentLevel >= 0 && scale > 0) {
                level = (currentLevel * 100) / scale;
            }//from ww  w  .j a v  a2  s .  c  o  m
        }
    };
    IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
    registerReceiver(batteryLevelReceiver, batteryLevelFilter);
}

From source file:fr.inria.ucn.collectors.NetworkStateCollector.java

@SuppressLint("NewApi")
@Override/*from  w  ww  . j a  va  2s. c o m*/
public void onReceive(Context context, Intent intent) {
    long ts = System.currentTimeMillis();
    if (intent.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {
        context.unregisterReceiver(this);
        try {
            JSONArray neighs = new JSONArray();
            WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
            for (ScanResult r : wm.getScanResults()) {
                JSONObject o = new JSONObject();
                o.put("frequency", r.frequency);
                o.put("level", r.level);
                if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1) {
                    o.put("timestamp", r.timestamp);
                }
                o.put("bssid", r.BSSID);
                o.put("ssid", r.SSID);
                neighs.put(o);
            }

            JSONObject wifi = new JSONObject();
            wifi.put("list", neighs);
            Helpers.sendResultObj(context, "wifi_neigh", ts, wifi);

        } catch (JSONException jex) {
            Log.w(Constants.LOGTAG, "failed to create json object", jex);
        }
        // this will clean the CPU lock too if running on the bg
        Helpers.releaseWifiLock();
    }
}

From source file:com.dileepindia.cordova.sms.SMSPlugin.java

private PluginResult stopWatch(CallbackContext callbackContext) {
    Log.d("SMSPlugin", "stopWatch");

    Context ctx = this.cordova.getActivity();

    if (this.mReceiver != null) {
        ctx.unregisterReceiver(this.mReceiver);
        this.mReceiver = null;
        Log.d("SMSPlugin", "broadcast receiver unregistered");
    }/* www  .j  av  a  2s .c o  m*/
    if (this.mObserver != null) {
        ctx.getContentResolver().unregisterContentObserver(this.mObserver);
        this.mObserver = null;
        Log.d("SMSPlugin", "sms inbox observer unregistered");
    }
    if (callbackContext != null)
        callbackContext.success();
    return null;
}

From source file:com.klinker.android.twitter.activities.tweet_viewer.TweetPager.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    overridePendingTransition(R.anim.activity_slide_up, R.anim.activity_slide_down);

    try {//from www  .j av a  2  s . c  o m
        getWindow().requestFeature(Window.FEATURE_PROGRESS);
    } catch (Exception e) {

    }

    context = this;
    settings = AppSettings.getInstance(this);

    try {
        ViewConfiguration config = ViewConfiguration.get(this);
        Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
        if (menuKeyField != null) {
            menuKeyField.setAccessible(true);
            menuKeyField.setBoolean(config, false);
        }
    } catch (Exception ex) {
        // Ignore
    }

    getFromIntent();

    mSectionsPagerAdapter = new TweetPagerAdapter(getFragmentManager(), context, name, screenName, tweet, time,
            retweeter, webpage, proPic, tweetId, picture, users, hashtags, otherLinks, isMyTweet, isMyRetweet,
            secondAcc, animatedGif);

    // methods for advancing windowed
    boolean settingsVal = settings.advanceWindowed;
    boolean fromWidget = getIntent().getBooleanExtra("from_widget", false);
    final boolean youtube;

    youtube = mSectionsPagerAdapter.getHasYoutube() || mSectionsPagerAdapter.getHasGif()
            || mSectionsPagerAdapter.hasVine();

    if (fromWidget || settingsVal) {
        setUpWindow(youtube);
    }

    setUpTheme();

    int currentOrientation = getResources().getConfiguration().orientation;
    if (currentOrientation == Configuration.ORIENTATION_LANDSCAPE) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
    } else {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
    }

    if (getIntent().getBooleanExtra("clicked_youtube", false)) {
        IntentFilter i = new IntentFilter("com.klinker.android.twitter.YOUTUBE_READY");
        registerReceiver(new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                TweetYouTubeFragment.resume();

                context.unregisterReceiver(this);
            }
        }, i);
    }

    setContentView(R.layout.tweet_pager);
    pager = (ViewPager) findViewById(R.id.pager);
    pager.setAdapter(mSectionsPagerAdapter);
    pager.setOffscreenPageLimit(5);

    final int numberOfPages = mSectionsPagerAdapter.getCount();

    pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int i, float v, int i2) {

        }

        @Override
        public void onPageSelected(int i) {
            if (youtube) {
                try {
                    switch (numberOfPages) {
                    case 3:
                    case 4:
                        if (i != 0) {
                            TweetYouTubeFragment.pause();
                        } else {
                            TweetYouTubeFragment.resume();
                        }
                        break;
                    case 5:
                        if (i != 1) {
                            TweetYouTubeFragment.pause();
                        } else {
                            TweetYouTubeFragment.resume();
                        }
                        break;
                    }
                } catch (Exception e) {

                }
            }
        }

        @Override
        public void onPageScrollStateChanged(int i) {

        }
    });

    switch (numberOfPages) {
    case 2:
        if (settings.pageToOpen == AppSettings.PAGE_CONVO) {
            pager.setCurrentItem(1);
        } else {
            pager.setCurrentItem(0);
        }
        break;
    case 3:
        if (mSectionsPagerAdapter.getHasWebpage()) {
            switch (settings.pageToOpen) {
            case AppSettings.PAGE_CONVO:
                pager.setCurrentItem(2);
                break;
            case AppSettings.PAGE_WEB:
                pager.setCurrentItem(0);
                break;
            default:
                pager.setCurrentItem(1);
                break;
            }
        } else { // no web page
            switch (settings.pageToOpen) {
            case AppSettings.PAGE_CONVO:
                pager.setCurrentItem(2);
                break;
            default:
                pager.setCurrentItem(1);
                break;
            }
        }
        break;
    case 4: // webpage and youtube
        switch (settings.pageToOpen) {
        case AppSettings.PAGE_CONVO:
            pager.setCurrentItem(3);
            break;
        case AppSettings.PAGE_WEB:
            pager.setCurrentItem(1);
            break;
        default:
            pager.setCurrentItem(0);
            break;
        }
        break;
    }

    if (getIntent().getBooleanExtra("clicked_youtube", false)) {
        pager.setCurrentItem(0);
    }

    if (settings.addonTheme) {
        PagerTitleStrip strip = (PagerTitleStrip) findViewById(R.id.pager_title_strip);
        strip.setBackgroundColor(settings.pagerTitleInt);

        if (!settings.showTitleStrip) {
            strip.setVisibility(View.GONE);
        }
    }

}

From source file:com.klinker.android.twitter.ui.tweet_viewer.TweetPager.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    overridePendingTransition(R.anim.activity_slide_up, R.anim.activity_slide_down);

    try {//from   w w  w  .  java2  s  .  c  o m
        getWindow().requestFeature(Window.FEATURE_PROGRESS);
    } catch (Exception e) {

    }

    context = this;
    settings = AppSettings.getInstance(this);

    try {
        ViewConfiguration config = ViewConfiguration.get(this);
        Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
        if (menuKeyField != null) {
            menuKeyField.setAccessible(true);
            menuKeyField.setBoolean(config, false);
        }
    } catch (Exception ex) {
        // Ignore
    }

    getFromIntent();

    // methods for advancing windowed
    boolean settingsVal = settings.advanceWindowed;
    boolean fromWidget = getIntent().getBooleanExtra("from_widget", false);
    final boolean youtube;
    if (webpage != null && linkString != null) {
        youtube = webpage.contains("youtu") || linkString.contains("youtu");
    } else {
        youtube = true;
    }

    // cases: (youtube will ALWAYS be full screen...)
    // from widget
    // the user set the preference to advance windowed
    // has a webview and want to advance windowed
    if (fromWidget || settingsVal) {
        setUpWindow(youtube);
    }

    setUpTheme();

    int currentOrientation = getResources().getConfiguration().orientation;
    if (currentOrientation == Configuration.ORIENTATION_LANDSCAPE) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
    } else {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
    }

    if (getIntent().getBooleanExtra("clicked_youtube", false)) {
        IntentFilter i = new IntentFilter("com.klinker.android.twitter.YOUTUBE_READY");
        registerReceiver(new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                TweetYouTubeFragment.resume();

                context.unregisterReceiver(this);
            }
        }, i);
    }

    setContentView(R.layout.tweet_pager);
    pager = (ViewPager) findViewById(R.id.pager);
    mSectionsPagerAdapter = new TweetPagerAdapter(getFragmentManager(), context, name, screenName, tweet, time,
            retweeter, webpage, proPic, tweetId, picture, users, hashtags, otherLinks, isMyTweet, isMyRetweet);
    pager.setAdapter(mSectionsPagerAdapter);
    pager.setOffscreenPageLimit(5);

    final int numberOfPages = mSectionsPagerAdapter.getCount();

    pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int i, float v, int i2) {

        }

        @Override
        public void onPageSelected(int i) {
            if (youtube) {
                try {
                    switch (numberOfPages) {
                    case 3:
                    case 4:
                        if (i != 0) {
                            TweetYouTubeFragment.pause();
                        } else {
                            TweetYouTubeFragment.resume();
                        }
                        break;
                    case 5:
                        if (i != 1) {
                            TweetYouTubeFragment.pause();
                        } else {
                            TweetYouTubeFragment.resume();
                        }
                        break;
                    }
                } catch (Exception e) {

                }
            }
        }

        @Override
        public void onPageScrollStateChanged(int i) {

        }
    });

    switch (numberOfPages) {
    case 2:
        if (settings.pageToOpen == AppSettings.PAGE_CONVO) {
            pager.setCurrentItem(1);
        } else {
            pager.setCurrentItem(0);
        }
        break;
    case 3:
        if (mSectionsPagerAdapter.getHasWebpage()) {
            switch (settings.pageToOpen) {
            case AppSettings.PAGE_CONVO:
                pager.setCurrentItem(2);
                break;
            case AppSettings.PAGE_WEB:
                pager.setCurrentItem(0);
                break;
            default:
                pager.setCurrentItem(1);
                break;
            }
        } else { // no web page
            switch (settings.pageToOpen) {
            case AppSettings.PAGE_CONVO:
                pager.setCurrentItem(2);
                break;
            default:
                pager.setCurrentItem(1);
                break;
            }
        }
        break;
    case 4: // webpage and youtube
        switch (settings.pageToOpen) {
        case AppSettings.PAGE_CONVO:
            pager.setCurrentItem(3);
            break;
        case AppSettings.PAGE_WEB:
            pager.setCurrentItem(1);
            break;
        default:
            pager.setCurrentItem(0);
            break;
        }
        break;
    }

    if (getIntent().getBooleanExtra("clicked_youtube", false)) {
        pager.setCurrentItem(0);
    }

    if (settings.addonTheme) {
        PagerTitleStrip strip = (PagerTitleStrip) findViewById(R.id.pager_title_strip);
        strip.setBackgroundColor(settings.pagerTitleInt);

        if (!settings.showTitleStrip) {
            strip.setVisibility(View.GONE);
        }
    }

}

From source file:net.momodalo.app.vimtouch.VimTouch.java

private void downloadFullRuntime() {

    BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override/*from   w w w .j  ava  2 s . co m*/
        public void onReceive(Context context, Intent intent) {
            context.unregisterReceiver(this);
            String action = intent.getAction();
            if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
                long downloadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0);
                Query query = new Query();
                query.setFilterById(mEnqueue);
                Cursor c = mDM.query(query);
                if (c.moveToFirst()) {
                    int columnIndex = c.getColumnIndex(DownloadManager.COLUMN_STATUS);
                    if (DownloadManager.STATUS_SUCCESSFUL == c.getInt(columnIndex)) {
                        String uriString = c.getString(c.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI));
                        Intent newintent = new Intent(getApplicationContext(), InstallProgress.class);
                        newintent.setData(Uri.parse(uriString));
                        startActivity(newintent);
                    }
                }
            }
        }
    };

    registerReceiver(receiver, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));

    mDM = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
    Request request = new Request(Uri.parse("https://github.com/downloads/momodalo/vimtouch/vim.vrz"));
    mEnqueue = mDM.enqueue(request);
}

From source file:com.zertinteractive.wallpaper.activities.DetailActivity.java

public void initDownloadComponents() {

    BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override// w  w  w  . j a v  a  2  s .c o  m
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
                //
            }
        }
    };

    context.registerReceiver(receiver, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
    context.unregisterReceiver(receiver);
}

From source file:com.scoreflex.Scoreflex.java

/**
 * Stops listening to network connectivity change
 *
 * @param context/*from  w w  w  . j  a  v a 2s . c om*/
 */
public static void unregisterNetworkReceiver(Context context) {
    try {
        context.unregisterReceiver(sConnectivityReceiver);
    } catch (Exception e) {

    }
}

From source file:com.esminis.server.library.service.server.installpackage.InstallerPackage.java

private void stopServer(Context context, ServerControl serverControl) {
    final CyclicBarrier barrier = new CyclicBarrier(2);
    final BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override//from  www  .  ja v a  2  s .co  m
        public void onReceive(Context context, Intent intent) {
            if (intent.getAction() == null
                    || !intent.getAction().equals(MainActivity.getIntentActionServerStatus(context))) {
                return;
            }
            final Bundle extras = intent.getExtras();
            if (extras == null || extras.containsKey("errorLine") || extras.getBoolean("running")) {
                return;
            }
            try {
                barrier.await();
            } catch (InterruptedException | BrokenBarrierException ignored) {
            }
        }
    };
    context.registerReceiver(receiver, new IntentFilter(MainActivity.getIntentActionServerStatus(context)));
    preferences.set(context, Preferences.SERVER_STARTED, false);
    serverControl.requestStop(null);
    try {
        barrier.await();
    } catch (InterruptedException | BrokenBarrierException ignored) {
    }
    context.unregisterReceiver(receiver);
}