Example usage for android.net.wifi WifiManager WIFI_MODE_FULL

List of usage examples for android.net.wifi WifiManager WIFI_MODE_FULL

Introduction

In this page you can find the example usage for android.net.wifi WifiManager WIFI_MODE_FULL.

Prototype

int WIFI_MODE_FULL

To view the source code for android.net.wifi WifiManager WIFI_MODE_FULL.

Click Source Link

Document

In this Wi-Fi lock mode, Wi-Fi will be kept active, and will behave normally, i.e., it will attempt to automatically establish a connection to a remembered access point that is within range, and will do periodic scans if there are remembered access points but none are in range.

Usage

From source file:de.schildbach.wallet.elysium.service.BlockchainServiceImpl.java

@Override
public void onCreate() {

    Log.d(TAG, ".onCreate()");

    super.onCreate();

    nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    final String lockName = getPackageName() + " blockchain sync";

    final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, lockName);

    final WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    wifiLock = wifiManager.createWifiLock(WifiManager.WIFI_MODE_FULL, lockName);
    wifiLock.setReferenceCounted(false);

    application = (WalletApplication) getApplication();
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
    final Wallet wallet = application.getWallet();

    final int versionCode = application.applicationVersionCode();
    prefs.edit().putInt(Constants.PREFS_KEY_LAST_VERSION, versionCode).commit();

    bestChainHeightEver = prefs.getInt(Constants.PREFS_KEY_BEST_CHAIN_HEIGHT_EVER, 0);

    peerConnectivityListener = new PeerConnectivityListener();

    sendBroadcastPeerState(0);//www  . j  a  v  a 2s  .c  om

    final IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
    intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_LOW);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_OK);
    registerReceiver(connectivityReceiver, intentFilter);

    blockChainFile = new File(getDir("blockstore", Context.MODE_WORLD_READABLE | Context.MODE_WORLD_WRITEABLE),
            Constants.BLOCKCHAIN_FILENAME);
    final boolean blockChainFileExists = blockChainFile.exists();

    if (!blockChainFileExists) {
        Log.d(TAG, "blockchain does not exist, resetting wallet");

        wallet.clearTransactions(0);
        copyBlockchainSnapshot(blockChainFile);
    }

    try {
        blockStore = new SPVBlockStore(Constants.NETWORK_PARAMETERS, blockChainFile);

        if (!blockChainFileExists) { // Starting from scratch
            try {
                final long earliestKeyCreationTime = wallet.getEarliestKeyCreationTime();
                final InputStream checkpointsFileIn = getAssets().open("checkpoints");
                CheckpointManager.checkpoint(Constants.NETWORK_PARAMETERS, checkpointsFileIn, blockStore,
                        earliestKeyCreationTime);
            } catch (IOException e) {
                Log.d("Elysium", "Couldn't find checkpoints file; starting from genesis");

            }
        }
        blockStore.getChainHead(); // detect corruptions as early as possible

    } catch (final BlockStoreException x) {
        blockChainFile.delete();

        x.printStackTrace();

        throw new Error("blockstore cannot be created", x);
    } catch (final NullPointerException x) {
        blockChainFile.delete();

        x.printStackTrace();
        throw new Error("blockstore cannot be created", x);
    }

    try {

        blockChain = new BlockChain(Constants.NETWORK_PARAMETERS, wallet, blockStore);

    } catch (final BlockStoreException x) {
        throw new Error("blockchain cannot be created", x);
    }

    application.getWallet().addEventListener(walletEventListener);

    registerReceiver(tickReceiver, new IntentFilter(Intent.ACTION_TIME_TICK));

}

From source file:devcoin.wallet.service.BlockchainServiceImpl.java

@Override
public void onCreate() {
    serviceCreatedAt = System.currentTimeMillis();
    log.debug(".onCreate()");

    super.onCreate();

    nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    final String lockName = getPackageName() + " blockchain sync";

    final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, lockName);

    final WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    wifiLock = wifiManager.createWifiLock(WifiManager.WIFI_MODE_FULL, lockName);
    wifiLock.setReferenceCounted(false);

    application = (WalletApplication) getApplication();
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
    final Wallet wallet = application.getWallet();

    bestChainHeightEver = prefs.getInt(Constants.PREFS_KEY_BEST_CHAIN_HEIGHT_EVER, 0);

    peerConnectivityListener = new PeerConnectivityListener();

    sendBroadcastPeerState(0);//www . j a  v a  2  s. c  o m

    final IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_LOW);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_OK);
    registerReceiver(connectivityReceiver, intentFilter);

    blockChainFile = new File(getDir("blockstore", Context.MODE_PRIVATE), Constants.BLOCKCHAIN_FILENAME);
    final boolean blockChainFileExists = blockChainFile.exists();

    if (!blockChainFileExists) {
        log.info("blockchain does not exist, resetting wallet");

        wallet.clearTransactions(0);
        wallet.setLastBlockSeenHeight(-1); // magic value
        wallet.setLastBlockSeenHash(null);
    }

    try {
        blockStore = new SPVBlockStore(Constants.NETWORK_PARAMETERS, blockChainFile);
        blockStore.getChainHead(); // detect corruptions as early as possible

        final long earliestKeyCreationTime = wallet.getEarliestKeyCreationTime();

        if (!blockChainFileExists && earliestKeyCreationTime > 0) {
            try {
                final InputStream checkpointsInputStream = getAssets().open(Constants.CHECKPOINTS_FILENAME);
                CheckpointManager.checkpoint(Constants.NETWORK_PARAMETERS, checkpointsInputStream, blockStore,
                        earliestKeyCreationTime);
            } catch (final IOException x) {
                log.error("problem reading checkpoints, continuing without", x);
            }
        }
    } catch (final BlockStoreException x) {
        blockChainFile.delete();

        final String msg = "blockstore cannot be created";
        log.error(msg, x);
        throw new Error(msg, x);
    }

    log.info("using " + blockStore.getClass().getName());

    try {
        blockChain = new BlockChain(Constants.NETWORK_PARAMETERS, wallet, blockStore);
    } catch (final BlockStoreException x) {
        throw new Error("blockchain cannot be created", x);
    }

    application.getWallet().addEventListener(walletEventListener);

    registerReceiver(tickReceiver, new IntentFilter(Intent.ACTION_TIME_TICK));

    maybeRotateKeys();
}

From source file:de.schildbach.litecoinwallet.service.BlockchainServiceImpl.java

@Override
public void onCreate() {
    serviceCreatedAt = System.currentTimeMillis();
    log.debug(".onCreate()");

    super.onCreate();

    nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    final String lockName = getPackageName() + " blockchain sync";

    final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, lockName);

    final WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    wifiLock = wifiManager.createWifiLock(WifiManager.WIFI_MODE_FULL, lockName);
    wifiLock.setReferenceCounted(false);

    application = (WalletApplication) getApplication();
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
    final Wallet wallet = application.getWallet();

    bestChainHeightEver = prefs.getInt(Constants.PREFS_KEY_BEST_CHAIN_HEIGHT_EVER, 0);

    peerConnectivityListener = new PeerConnectivityListener();

    sendBroadcastPeerState(0);//from w ww.j  a v  a2s .c  o  m

    final IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_LOW);
    intentFilter.addAction(Intent.ACTION_DEVICE_STORAGE_OK);
    registerReceiver(connectivityReceiver, intentFilter);

    blockChainFile = new File(getDir("blockstore", Context.MODE_PRIVATE), Constants.BLOCKCHAIN_FILENAME);
    final boolean blockChainFileExists = blockChainFile.exists();

    if (!blockChainFileExists) {
        log.info("blockchain does not exist, resetting litecoinwallet");

        wallet.clearTransactions(0);
        wallet.setLastBlockSeenHeight(-1); // magic value
        wallet.setLastBlockSeenHash(null);
    }

    try {
        blockStore = new SPVBlockStore(Constants.NETWORK_PARAMETERS, blockChainFile);
        blockStore.getChainHead(); // detect corruptions as early as possible

        final long earliestKeyCreationTime = wallet.getEarliestKeyCreationTime();

        if (!blockChainFileExists && earliestKeyCreationTime > 0) {
            try {
                final InputStream checkpointsInputStream = getAssets().open(Constants.CHECKPOINTS_FILENAME);
                CheckpointManager.checkpoint(Constants.NETWORK_PARAMETERS, checkpointsInputStream, blockStore,
                        earliestKeyCreationTime);
            } catch (final IOException x) {
                log.error("problem reading checkpoints, continuing without", x);
            }
        }
    } catch (final BlockStoreException x) {
        blockChainFile.delete();

        final String msg = "blockstore cannot be created";
        log.error(msg, x);
        throw new Error(msg, x);
    }

    log.info("using " + blockStore.getClass().getName());

    try {
        blockChain = new BlockChain(Constants.NETWORK_PARAMETERS, wallet, blockStore);
    } catch (final BlockStoreException x) {
        throw new Error("blockchain cannot be created", x);
    }

    application.getWallet().addEventListener(walletEventListener);

    registerReceiver(tickReceiver, new IntentFilter(Intent.ACTION_TIME_TICK));

    maybeRotateKeys();
}

From source file:org.openbmap.activities.StartscreenActivity.java

/**
 * Creates a new wifi lock, which isn't yet acquired
 *//* w  w w  .ja v  a 2 s  .c  o m*/
private void createWifiLock() {
    // create wifi lock (will be acquired for version check/upload)
    final WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
    if (wifiManager != null) {
        wifiLock = wifiManager.createWifiLock(WifiManager.WIFI_MODE_FULL, WIFILOCK_NAME);
    } else {
        Log.e(TAG, "Error acquiring wifi lock");
    }
}

From source file:net.ustyugov.jtalk.service.JTalkService.java

@Override
public void onCreate() {
    configure();/*  w  w w  .  ja v  a 2  s .c om*/
    js = this;
    prefs = PreferenceManager.getDefaultSharedPreferences(this);
    iconPicker = new IconPicker(this);

    //        updateReceiver = new BroadcastReceiver() {
    //         @Override
    //         public void onReceive(Context arg0, Intent arg1) {
    //            updateWidget();
    //         }
    //        };
    //        registerReceiver(updateReceiver, new IntentFilter(Constants.UPDATE));

    connectionReceiver = new ChangeConnectionReceiver();
    registerReceiver(connectionReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));

    screenStateReceiver = new ScreenStateReceiver();
    registerReceiver(new ScreenStateReceiver(), new IntentFilter(Intent.ACTION_SCREEN_ON));
    registerReceiver(new ScreenStateReceiver(), new IntentFilter(Intent.ACTION_SCREEN_OFF));

    Intent i = new Intent(this, RosterActivity.class);
    i.setAction(Intent.ACTION_MAIN);
    i.addCategory(Intent.CATEGORY_LAUNCHER);
    i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, i, 0);

    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);
    mBuilder.setSmallIcon(R.drawable.stat_offline);
    mBuilder.setContentTitle(getString(R.string.app_name));
    mBuilder.setContentIntent(contentIntent);

    startForeground(Notify.NOTIFICATION, mBuilder.build());

    WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    wifiLock = wifiManager.createWifiLock(WifiManager.WIFI_MODE_FULL, "jTalk");
    PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
    wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "jTalk");

    started = true;

    Cursor cursor = getContentResolver().query(JTalkProvider.ACCOUNT_URI, null,
            AccountDbHelper.ENABLED + " = '" + 1 + "'", null, null);
    if (cursor != null && cursor.getCount() > 0) {
        connect();
        cursor.close();
    }
}

From source file:com.nbplus.iotapp.service.IoTService.java

@Override
public void onCreate() {
    Log.i(TAG, "debug: Creating service");
    sendBroadcast(new Intent(IoTConstants.ACTION_SERVICE_CREATE_BROADCAST));
    /**//from  www .j  av a  2  s.c  om
     * Target we publish for clients to send messages to IncomingHandler.Note
     * that calls to its binder are sequential!
     */
    mServiceMessenger = new Messenger(mHandler);

    mUseIoTGateway = IoTServicePreference.isUseIoTGateway(this);
    if (mUseIoTGateway) {
        Log.d(TAG, ">> Use IoT Gateway....");
        // Create the Wifi lock (this does not acquire the lock, this just creates it)
        mWifiLock = ((WifiManager) getSystemService(Context.WIFI_SERVICE))
                .createWifiLock(WifiManager.WIFI_MODE_FULL, IoTService.class.getSimpleName() + "_lock");

        // check network status
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
        registerReceiver(mBroadcastReceiver, intentFilter);

        mLastConnectionStatus = NetworkUtils.isConnected(this);

        // TODO : connect to iot gateway
        if (mThreadPooledServer != null) {
            mThreadPooledServer.stop(false);
        }
        mThreadPooledServer = new ThreadPooledServer(mServiceMessenger, IoTConstants.IOT_GATEWAY_SERVER_PORT,
                IoTConstants.IOT_GATEWAY_SERVER_THREAD_POOL_SIZE);
        new Thread(mThreadPooledServer).start();
    } else {
        Log.d(TAG, ">> Use internal blutooth....");
        // check bluetooth status
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction(BluetoothAdapter.ACTION_STATE_CHANGED);
        registerReceiver(mBroadcastReceiver, intentFilter);

        // bluetooth local broadcast
        intentFilter = makeGattUpdateIntentFilter();
        LocalBroadcastManager.getInstance(this).registerReceiver(mBroadcastReceiver, intentFilter);

        // connect to ble service
        mErrorCodes = checkBluetoothEnabled();
        if (mErrorCodes.equals(IoTResultCodes.SUCCESS)) {
            try {
                if (mBluetoothServiceConnection != null) {
                    unbindService(mBluetoothServiceConnection);
                }
            } catch (Exception e) {

            }
            final Intent gattServiceIntent = new Intent(this, BluetoothLeService.class);
            bindService(gattServiceIntent, mBluetoothServiceConnection, BIND_AUTO_CREATE);
        } else {
            mServiceStatus = IoTServiceStatus.STOPPED;
            Log.d(TAG, "Internal bluetooth error = " + mErrorCodes);
        }
    }
}

From source file:github.daneren2005.dsub.util.Util.java

public static WifiManager.WifiLock createWifiLock(Context context, String tag) {
    WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
    int lockType = WifiManager.WIFI_MODE_FULL;
    if (Build.VERSION.SDK_INT >= 12) {
        lockType = 3;//  w w  w.j av a2s .  co m
    }
    return wm.createWifiLock(lockType, tag);
}

From source file:com.csipsimple.service.SipService.java

/**
 * Ask to take the control of the wifi and the partial wake lock if
 * configured//www .  j a v a  2s . c om
 */
private synchronized void acquireResources() {
    if (holdResources) {
        return;
    }

    // Add a wake lock for CPU if necessary
    if (prefsWrapper.getPreferenceBooleanValue(SipConfigManager.USE_PARTIAL_WAKE_LOCK)) {
        PowerManager pman = (PowerManager) getSystemService(Context.POWER_SERVICE);
        if (wakeLock == null) {
            wakeLock = pman.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "com.csipsimple.SipService");
            wakeLock.setReferenceCounted(false);
        }
        // Extra check if set reference counted is false ???
        if (!wakeLock.isHeld()) {
            wakeLock.acquire();
        }
    }

    // Add a lock for WIFI if necessary
    WifiManager wman = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    if (wifiLock == null) {
        int mode = WifiManager.WIFI_MODE_FULL;
        if (Compatibility.isCompatible(9)
                && prefsWrapper.getPreferenceBooleanValue(SipConfigManager.LOCK_WIFI_PERFS)) {
            mode = 0x3; // WIFI_MODE_FULL_HIGH_PERF 
        }
        wifiLock = wman.createWifiLock(mode, "com.csipsimple.SipService");
        wifiLock.setReferenceCounted(false);
    }
    if (prefsWrapper.getPreferenceBooleanValue(SipConfigManager.LOCK_WIFI) && !wifiLock.isHeld()) {
        WifiInfo winfo = wman.getConnectionInfo();
        if (winfo != null) {
            DetailedState dstate = WifiInfo.getDetailedStateOf(winfo.getSupplicantState());
            // We assume that if obtaining ip addr, we are almost connected
            // so can keep wifi lock
            if (dstate == DetailedState.OBTAINING_IPADDR || dstate == DetailedState.CONNECTED) {
                if (!wifiLock.isHeld()) {
                    wifiLock.acquire();
                }
            }
        }
    }
    holdResources = true;
}