List of usage examples for android.app Application registerReceiver
@Override
public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter)
From source file:com.popdeem.sdk.core.PopdeemSDK.java
/** * Initialize Popdeem SDK//w w w . j a v a 2 s . com * * @param application Application context * @param enviroment Popdeem enviroment PD_PROD_API_ENDPOINT, PD_STAGING_API_ENDPOINT * */ public static void initializeSDK(@NonNull final Application application, String enviroment) { application.registerReceiver(mLoggedInBroadcastReceiver, new IntentFilter(PD_LOGGED_IN_RECEIVER_FILTER)); PDAPIConfig.PD_API_ENDPOINT = enviroment; sApplication = application; // Register Activity Lifecycle Callbacks application.registerActivityLifecycleCallbacks(PD_ACTIVITY_LIFECYCLE_CALLBACKS); // Init Realm PDRealmUtils.initRealmDB(application); TwitterAuthConfig authConfig = PDSocialUtils.getTwitterAuthConfig(application.getApplicationContext()); TwitterConfig config = new TwitterConfig.Builder(application).logger(new DefaultLogger(Log.DEBUG)) .twitterAuthConfig(authConfig).debug(true).build(); Twitter.initialize(config); // Get Popdeem API Key getPopdeemAPIKey(); FacebookSdk.sdkInitialize(application, new FacebookSdk.InitializeCallback() { @Override public void onInitialized() { Log.i("Facebook", "onInitialized: Facebook initialized"); } }); sdkInitialized = true; PDAPIClient.instance().getCustomer(new PDAPICallback<JsonObject>() { @Override public void success(JsonObject jsonObject) { Log.i("JsonObject", "success: "); if (jsonObject.has("customer")) { JsonObject customer = jsonObject.getAsJsonObject("customer"); PDRealmCustomer realmCustomer = PDRealmCustomer.fromJson(customer); Realm realm = Realm.getDefaultInstance(); realm.beginTransaction(); RealmResults<PDRealmCustomer> results = realm.where(PDRealmCustomer.class).findAll(); results.deleteAllFromRealm(); realm.copyToRealm(realmCustomer); realm.commitTransaction(); realm.close(); initFromCustomer(application); } } @Override public void failure(int statusCode, Exception e) { e.printStackTrace(); initFromCustomer(application); } }); // Get UID for Non Social login if (PDUniqueIdentifierUtils.getUID() == null) { PDUniqueIdentifierUtils.createUID(application, new PDUniqueIdentifierUtils.PDUIDCallback() { @Override public void success(String uid) { PDRealmNonSocialUID uidReam = new PDRealmNonSocialUID(); // uidReam.setId(0); uidReam.setRegistered(false); uidReam.setUid(uid); Realm realm = Realm.getDefaultInstance(); realm.beginTransaction(); realm.copyToRealmOrUpdate(uidReam); realm.commitTransaction(); realm.close(); registerNonSocialUser(); } @Override public void failure(String message) { PDLog.d(PDUniqueIdentifierUtils.class, "failed to create uid: " + message); } }); } // Init GCM PDFirebaseMessagingService.initGCM(application, new PDGCMUtils.PDGCMRegistrationCallback() { @Override public void success(String registrationToken) { PDLog.d(PDGCMUtils.class, "Init GCM success. Registration token: " + registrationToken); registerNonSocialUser(); } @Override public void failure(String message) { PDLog.d(PDGCMUtils.class, "Init GCM failure: " + message); } }); }