|
|
@@ -10,20 +10,24 @@ import android.support.v7.app.AppCompatActivity;
|
|
|
import android.util.Log;
|
|
|
import android.view.MenuItem;
|
|
|
|
|
|
-import io.reactivex.disposables.Disposable;
|
|
|
+import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
|
+import io.reactivex.disposables.CompositeDisposable;
|
|
|
import kr.co.zumo.app.R;
|
|
|
import kr.co.zumo.app.lifeplus.activity.setting.IAppSetting;
|
|
|
import kr.co.zumo.app.lifeplus.activity.setting.NetworkDisconnectedAppSetting;
|
|
|
import kr.co.zumo.app.lifeplus.activity.setting.SignUpAppSetting;
|
|
|
import kr.co.zumo.app.lifeplus.activity.setting.TutorialAppSetting;
|
|
|
import kr.co.zumo.app.lifeplus.application.App;
|
|
|
+import kr.co.zumo.app.lifeplus.config.NetworkConfig;
|
|
|
import kr.co.zumo.app.lifeplus.manager.ActionBarManager;
|
|
|
import kr.co.zumo.app.lifeplus.model.BaseSharedPreferences;
|
|
|
import kr.co.zumo.app.lifeplus.model.LifeplusPreferences;
|
|
|
import kr.co.zumo.app.lifeplus.model.SuperModel;
|
|
|
+import kr.co.zumo.app.lifeplus.network.InternetStatus;
|
|
|
import kr.co.zumo.app.lifeplus.network.NetworkConnection;
|
|
|
import kr.co.zumo.app.lifeplus.network.NetworkReceiver;
|
|
|
import kr.co.zumo.app.lifeplus.supervisor.ScreenChangerHelper;
|
|
|
+import kr.co.zumo.app.lifeplus.util.StringUtil;
|
|
|
import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
|
|
|
|
|
|
/**
|
|
|
@@ -41,7 +45,7 @@ public abstract class ActivityBase extends AppCompatActivity {
|
|
|
|
|
|
private NetworkReceiver networkReceiver;
|
|
|
IAppSetting appSetting;
|
|
|
- Disposable disposable;
|
|
|
+ CompositeDisposable disposable = new CompositeDisposable();
|
|
|
|
|
|
@Override
|
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
|
@@ -56,38 +60,56 @@ public abstract class ActivityBase extends AppCompatActivity {
|
|
|
ScreenChangerHelper.getInstance().setContainerId(R.id.container);
|
|
|
ActionBarManager.getInstance().setActivityInfo(this);
|
|
|
|
|
|
- disposable = NetworkConnection.check().subscribe(isConnected -> {
|
|
|
-
|
|
|
- Context context = App.getInstance().getContext();
|
|
|
- SuperModel.getInstance().init(new LifeplusPreferences(new BaseSharedPreferences(PreferenceManager.getDefaultSharedPreferences(context))));
|
|
|
-
|
|
|
- networkReceiver = new NetworkReceiver(context, SuperModel.getInstance());
|
|
|
-
|
|
|
- appSetting = getAppSetting();
|
|
|
- Log.i("APP# ActivityBase | onCreate", "| Network Connected ==============================================================> " + isConnected);
|
|
|
- if (isConnected == false) {
|
|
|
+ disposable.add(NetworkConnection.check().subscribe(isConnected -> {
|
|
|
+
|
|
|
+ Context context = App.getInstance().getContext();
|
|
|
+ SuperModel superModel = SuperModel.getInstance();
|
|
|
+ superModel.init(new LifeplusPreferences(new BaseSharedPreferences(PreferenceManager.getDefaultSharedPreferences(context))));
|
|
|
+
|
|
|
+ // fixme true-> true, false-> false 중복으로 전달되는 부분 처리 필요;
|
|
|
+ networkReceiver = new NetworkReceiver(context, (isConnected1, type) -> {
|
|
|
+ Log.i("APP# ActivityBase | onCreate", "|" + "Network Status: " + isConnected1 + ", type: " + type);
|
|
|
+ superModel.onChangedConnection(isConnected1, type);
|
|
|
+ });
|
|
|
+
|
|
|
+ disposable.add(InternetStatus.observe(NetworkConfig.HOST_URL, NetworkConfig.HOST_PORT, 5000, 3000)
|
|
|
+ .observeOn(AndroidSchedulers.mainThread())
|
|
|
+ .subscribe(isConnectedInternet -> {
|
|
|
+ Log.i("APP# ActivityBase | onCreate", "|" + "InternetStatus: " + isConnectedInternet);
|
|
|
+ superModel.onChangedConnection(isConnectedInternet, 0);
|
|
|
+ }, e -> {
|
|
|
+ superModel.onChangedConnection(false, 0);
|
|
|
+ })
|
|
|
+ );
|
|
|
+
|
|
|
+// Log.e("APP# ActivityBase | onCreate", "| 이전 가입 번호: ::::::::::::::::::::::::::: " + SuperModel.getInstance().getPreferences().getEncryptionUserNo());
|
|
|
+
|
|
|
+ appSetting = getAppSetting();
|
|
|
+ Log.i("APP# ActivityBase | onCreate", "| Network Connected ==============================================================> " + isConnected);
|
|
|
+ if (isConnected == false) {
|
|
|
// if (AppUtil.isRelease()) {
|
|
|
- appSetting = new NetworkDisconnectedAppSetting();
|
|
|
+ appSetting = new NetworkDisconnectedAppSetting();
|
|
|
// }
|
|
|
- }
|
|
|
- else if (SuperModel.getInstance().getPreferences().getTutorialDone() == false) {
|
|
|
- appSetting = new TutorialAppSetting();
|
|
|
- }
|
|
|
- else if (SuperModel.getInstance().getPreferences().getEncryptionUserNo().equals("") == false) {
|
|
|
- // todo 앱 업데이트 한 사람일 경우
|
|
|
- /**
|
|
|
- * 업데이트 인증 시작
|
|
|
- * - 업데이트 인증 앱 세팅 -> 프래그먼트 -> 프리젠터 ->
|
|
|
- */
|
|
|
- }
|
|
|
- else if (false) {
|
|
|
- // todo 비회원일 경우
|
|
|
- appSetting = new SignUpAppSetting();
|
|
|
- }
|
|
|
-
|
|
|
- appSetting.startFragment();
|
|
|
-
|
|
|
- }, Throwable::printStackTrace);
|
|
|
+ }
|
|
|
+ else if (superModel.getPreferences().getTutorialDone() == false) {
|
|
|
+ appSetting = new TutorialAppSetting();
|
|
|
+ }
|
|
|
+ else if (StringUtil.isFull(superModel.getPreferences().getEncryptionUserNo())) {
|
|
|
+ // todo 앱 업데이트 한 사람일 경우
|
|
|
+ /**
|
|
|
+ * 업데이트 인증 시작
|
|
|
+ * - 업데이트 인증 앱 세팅 -> 프래그먼트 -> 프리젠터 ->
|
|
|
+ */
|
|
|
+ }
|
|
|
+ else if (false) {
|
|
|
+ // todo 비회원일 경우
|
|
|
+ appSetting = new SignUpAppSetting();
|
|
|
+ }
|
|
|
+
|
|
|
+ appSetting.startFragment();
|
|
|
+
|
|
|
+ }, Throwable::printStackTrace)
|
|
|
+ );
|
|
|
|
|
|
}
|
|
|
|