org.deviceconnect.android.deviceplugin.sphero.setting.SettingActivity.java Source code

Java tutorial

Introduction

Here is the source code for org.deviceconnect.android.deviceplugin.sphero.setting.SettingActivity.java

Source

/*
 SettingActivity.java
 Copyright (c) 2014 NTT DOCOMO,INC.
 Released under the MIT license
 http://opensource.org/licenses/mit-license.php
 */
package org.deviceconnect.android.deviceplugin.sphero.setting;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v4.app.Fragment;
import android.support.v4.content.LocalBroadcastManager;

import org.deviceconnect.android.deviceplugin.sphero.BuildConfig;
import org.deviceconnect.android.deviceplugin.sphero.SpheroDeviceService;
import org.deviceconnect.android.deviceplugin.sphero.data.SpheroParcelable;
import org.deviceconnect.android.deviceplugin.sphero.setting.fragment.PairingFragment;
import org.deviceconnect.android.deviceplugin.sphero.setting.fragment.WakeupFragment;
import org.deviceconnect.android.ui.activity.DConnectSettingPageFragmentActivity;

import java.lang.ref.WeakReference;
import java.util.List;

/**
 * ?.
 * @author NTT DOCOMO, INC.
 */
public class SettingActivity extends DConnectSettingPageFragmentActivity {
    /** Action NameSpace. */
    private static final String ACTION_NAMESPACE = SettingActivity.class.getPackage().getName() + ".action";

    /** 
     * ??????.
     */
    public static final String ACTION_ADD_DEVICE = ACTION_NAMESPACE + ".ADD_DEVICE";

    /** 
     * ????.
     */
    public static final String ACTION_ADD_CONNECTED_DEVICE = ACTION_NAMESPACE + ".ADD_CONNECTED_DEVICE";
    /**
     * ???????.
     */
    public static final String ACTION_ADD_FOUNDED_DEVICE = ACTION_NAMESPACE + ".ADD_FOUNDED_DEVICE";

    /** 
     * ??.
     */
    public static final String ACTION_REMOVE_DEVICE = ACTION_NAMESPACE + ".REMOVE_DEVICE";

    /** 
     * ??????.
     */
    public static final String ACTION_REMOVE_DEVICE_ALL = ACTION_NAMESPACE + ".REMOVE_DEVICE_ALL";

    /** 
     * ??.
     */
    public static final String ACTION_CONNECTED = ACTION_NAMESPACE + ".ACTION_CONNECTED";
    /**
     * ??.
     */
    public static final String ACTION_DISCONNECTED = ACTION_NAMESPACE + ".ACTION_DISCONNECTED";
    /**
     * ??.
     */
    public static final String ACTION_DELETED = ACTION_NAMESPACE + ".ACTION_DELETED";

    /**
     * Extra : {@value} .
     */
    public static final String EXTRA_DEVICE = "device";
    /**
     * Extra : {@value} .
     */
    public static final String EXTRA_IS_CONNECTED = "is_connected";

    /**
     * Extra : {@value} .
     */
    public static final String EXTRA_DEVICES = "devices";

    /** 
     * ????.
     */
    private BroadcastReceiver mReceiver;

    /**
      * ?.
      */
    @SuppressWarnings("rawtypes")
    private static final Class[] PAGES = { WakeupFragment.class, PairingFragment.class, };

    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    public int getPageCount() {
        return PAGES.length;
    }

    @Override
    public Fragment createPage(final int position) {
        Fragment page;
        try {
            page = (Fragment) PAGES[position].newInstance();
        } catch (InstantiationException e) {
            if (BuildConfig.DEBUG) {
                e.printStackTrace();
            }
            page = null;
        } catch (IllegalAccessException e) {
            if (BuildConfig.DEBUG) {
                e.printStackTrace();
            }
            page = null;
        }

        return page;
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(this);
        lbm.unregisterReceiver(mReceiver);
    }
}