正在查看: WeatherSense v1.8.9 应用的 MipushTestActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: WeatherSense v1.8.9 应用的 MipushTestActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.emax.weather.ui.activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import com.emax.weahter.R;
import com.emax.weather.bean.AlarmEventType;
import com.emax.weather.bean.User;
import com.emax.weather.bean.db.DaoHadle;
import com.emax.weather.util.AndroidScheduler;
import com.emax.weather.utils.RxUtil;
import com.ezon.health.utils_lib.SharedPre;
import com.ezon.health.utils_lib.SharedPreUtils;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.umeng.message.UmengNotifyClickActivity;
import com.umeng.message.entity.UMessage;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
import io.reactivex.functions.Consumer;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.json.JSONException;
import org.json.JSONObject;
public class MipushTestActivity extends UmengNotifyClickActivity {
private static String TAG = "com.emax.weather.ui.activity.MipushTestActivity";
private Disposable disposable;
private boolean isGetUser = false;
private String token;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
RxUtil.addWork(new RxUtil.RxActionListener<User>() {
@Override
public User doAction() {
return DaoHadle.getUser();
}
@Override
public void reponseAction(User user) {
System.out.println("用户数据获取成功 reponseAction");
MipushTestActivity.this.isGetUser = true;
MipushTestActivity.this.token = DaoHadle.getUser().getToken();
}
@Override
public void reponseDataNull() {
System.out.println("用户数据获取成功 reponseDataNull");
MipushTestActivity.this.isGetUser = true;
}
@Override
public void reponseError(Throwable e) {
System.out.println("用户数据获取成功 reponseError " + e.getMessage());
MipushTestActivity.this.isGetUser = true;
}
});
this.disposable = Observable.interval(1500L, TimeUnit.MILLISECONDS).observeOn(AndroidScheduler.mainThread()).subscribe(new Consumer() {
public final void accept(Object obj) {
MipushTestActivity.this.lambda$onCreate$0$MipushTestActivity((Long) obj);
}
}, new Consumer() {
public final void accept(Object obj) {
System.out.print("throwable.getMessage() = " + ((Throwable) obj).getMessage());
}
});
}
public void lambda$onCreate$0$MipushTestActivity(Long l) throws Exception {
System.out.println("等待获取用户数据 :" + this.isGetUser);
if (this.isGetUser) {
clearDisposable();
if (this.token != null) {
startActivity(new Intent((Context) this, (Class<?>) MainActivity.class));
finish();
} else {
startActivity(new Intent((Context) this, (Class<?>) LoginActivity.class));
finish();
}
}
}
private void clearDisposable() {
Disposable disposable = this.disposable;
if (disposable == null || disposable.isDisposed()) {
return;
}
this.disposable.dispose();
this.disposable = null;
}
public void onMessage(Intent intent) {
UMessage uMessage;
List arrayList;
super.onMessage(intent);
String stringExtra = intent.getStringExtra("body");
try {
uMessage = new UMessage(new JSONObject(stringExtra));
} catch (JSONException e) {
e.printStackTrace();
uMessage = null;
}
Log.i(TAG, "lyq onMessage message.display_type:" + uMessage.display_type + " body:" + stringExtra);
if ("notification".equals(uMessage.display_type)) {
Map map = uMessage.extra;
for (String str : map.keySet()) {
String str2 = (String) map.get(str);
Log.i("MipushTestActivity", "lyq 厂家通道 key = " + str + " value = " + str2);
if ("weather_content".equals(str)) {
AlarmEventType alarmEventType = (AlarmEventType) new Gson().fromJson(str2, AlarmEventType.class);
Log.i("lyq Umeng", "lyq 厂家通道 getEventType:" + alarmEventType.getEventType());
if (TextUtils.isEmpty(alarmEventType.getEventType())) {
return;
}
alarmEventType.setOffLine(true);
String string = SharedPreUtils.getString(this, SharedPre.Alarm.ALARM_INFO);
if (!TextUtils.isEmpty(string)) {
arrayList = (List) new Gson().fromJson(string, new TypeToken<ArrayList<AlarmEventType>>() {
}.getType());
if (arrayList == null) {
arrayList = new ArrayList();
arrayList.add(alarmEventType);
System.out.println("lyq alarm 厂家通道 本地报警数据不为空 解析出来却为空 add");
} else {
int i = -1;
for (int i2 = 0; i2 < arrayList.size(); i2++) {
if (((AlarmEventType) arrayList.get(i2)).getEventData().getType() == alarmEventType.getEventData().getType()) {
i = i2;
}
}
if (i != -1) {
arrayList.set(i, alarmEventType);
} else {
arrayList.add(alarmEventType);
}
System.out.println("lyq alarm 厂家通道 本地报警数据不为空 解析出来不为空 isSame:" + i);
}
} else {
arrayList = new ArrayList();
arrayList.add(alarmEventType);
System.out.println("lyq alarm 厂家通道 本地报警数据为空 add");
}
if (arrayList != null && arrayList.size() > 0) {
String json = new Gson().toJson(arrayList);
System.out.println("lyq alarm 厂家通道 保存至本地的报警数据:" + json);
SharedPreUtils.putString(this, SharedPre.Alarm.ALARM_INFO, json);
} else {
SharedPreUtils.putString(this, SharedPre.Alarm.ALARM_INFO, "");
}
}
}
}
}
}