131 lines
3.1 KiB
Java
131 lines
3.1 KiB
Java
package com.example.ninefourone.nutritionmaster;
|
||
|
||
import android.app.Activity;
|
||
import android.app.Application;
|
||
import android.os.Bundle;
|
||
|
||
import com.example.ninefourone.nutritionmaster.bean.MyUser;
|
||
|
||
import com.example.ninefourone.nutritionmaster.bean.Occupation;
|
||
import com.example.ninefourone.nutritionmaster.utils.ConstantUtils;
|
||
import com.example.ninefourone.nutritionmaster.utils.WebUtils;
|
||
import com.google.gson.Gson;
|
||
import com.orhanobut.logger.AndroidLogAdapter;
|
||
import com.orhanobut.logger.Logger;
|
||
|
||
import java.io.IOException;
|
||
|
||
import okhttp3.Call;
|
||
import okhttp3.Callback;
|
||
import okhttp3.Response;
|
||
|
||
|
||
/**
|
||
* Created by ScorpioMiku on 2018/8/26.
|
||
*/
|
||
|
||
public class NutritionMaster extends Application {
|
||
public static NutritionMaster mInstance;
|
||
private int appCount = 0;
|
||
|
||
public static MyUser user;
|
||
|
||
@Override
|
||
public void onCreate() {
|
||
super.onCreate();
|
||
mInstance = this;
|
||
init();
|
||
initUser();
|
||
}
|
||
|
||
/**
|
||
* 初始化所有基础的东西
|
||
*/
|
||
private void init() {
|
||
Logger.addLogAdapter(new AndroidLogAdapter());
|
||
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
|
||
@Override
|
||
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
|
||
|
||
}
|
||
|
||
@Override
|
||
public void onActivityStarted(Activity activity) {
|
||
appCount++;
|
||
}
|
||
|
||
@Override
|
||
public void onActivityResumed(Activity activity) {
|
||
|
||
}
|
||
|
||
@Override
|
||
public void onActivityPaused(Activity activity) {
|
||
|
||
}
|
||
|
||
@Override
|
||
public void onActivityStopped(Activity activity) {
|
||
appCount--;
|
||
}
|
||
|
||
@Override
|
||
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
|
||
|
||
}
|
||
|
||
@Override
|
||
public void onActivityDestroyed(Activity activity) {
|
||
|
||
}
|
||
});
|
||
initOccupations();
|
||
}
|
||
|
||
public static NutritionMaster getInstance() {
|
||
return mInstance;
|
||
}
|
||
|
||
/**
|
||
* app是否在前台
|
||
*
|
||
* @return true前台,false后台
|
||
*/
|
||
public boolean isForeground() {
|
||
return appCount > 0;
|
||
}
|
||
|
||
|
||
/**
|
||
* 初始化用户信息
|
||
*/
|
||
private void initUser() {
|
||
user = new MyUser();
|
||
user.setNickName("ScorpioMiku");
|
||
}
|
||
|
||
/**
|
||
* 初始化职业常量
|
||
*/
|
||
private void initOccupations() {
|
||
|
||
WebUtils.getAllOccupations(new Callback() {
|
||
@Override
|
||
public void onFailure(Call call, IOException e) {
|
||
e.printStackTrace();
|
||
}
|
||
|
||
@Override
|
||
public void onResponse(Call call, Response response) throws IOException {
|
||
Occupation[] occupations = new Gson().fromJson(response.body().string(), Occupation[].class);
|
||
for (int i = 0; i < occupations.length; i++) {
|
||
ConstantUtils.occupationList.add(occupations[i].getOccupation_name());
|
||
}
|
||
}
|
||
});
|
||
|
||
}
|
||
|
||
|
||
}
|