diff --git a/app/src/debug/java/com/gh/gamecenter/Injection.java b/app/src/debug/java/com/gh/gamecenter/Injection.java index 2ef63e553d..af0f6500c9 100644 --- a/app/src/debug/java/com/gh/gamecenter/Injection.java +++ b/app/src/debug/java/com/gh/gamecenter/Injection.java @@ -4,6 +4,7 @@ import android.app.Application; import com.facebook.stetho.Stetho; import com.facebook.stetho.okhttp3.StethoInterceptor; +import com.lightgame.utils.Utils; import com.squareup.leakcanary.LeakCanary; import okhttp3.OkHttpClient; @@ -34,11 +35,33 @@ public class Injection { } public static OkHttpClient.Builder provideRetrofitBuilder() { + HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + + @Override + public void log(String message) { + //分段打印retrofit日志 + if (message.startsWith("{") || message.startsWith("[")) + if (message.length() > 4000) { + for (int i = 0; i < message.length(); i += 4000) { + if (i + 4000 < message.length()) + Utils.log("OkHttp_Body::" + i, message.substring(i, i + 4000)); + else + Utils.log("OkHttp_Body::" + i, message.substring(i, message.length())); + } + } else + Utils.log("OkHttp_Body::", message); + } + }); + loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + OkHttpClient.Builder builder = new OkHttpClient.Builder(); HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(); interceptor.setLevel(HttpLoggingInterceptor.Level.BASIC); builder.addNetworkInterceptor(interceptor); builder.addNetworkInterceptor(new StethoInterceptor()); + if (BuildConfig.DEBUG) { + builder.addNetworkInterceptor(loggingInterceptor); + } return builder; } diff --git a/app/src/main/java/com/gh/base/AppUncaughtHandler.java b/app/src/main/java/com/gh/base/AppUncaughtHandler.java index 9081e97b0b..4f6b80ad02 100644 --- a/app/src/main/java/com/gh/base/AppUncaughtHandler.java +++ b/app/src/main/java/com/gh/base/AppUncaughtHandler.java @@ -42,7 +42,7 @@ public class AppUncaughtHandler implements UncaughtExceptionHandler { @Override public void run() { Looper.prepare(); - Utils.toastLong(mContext.getApplicationContext(), "\"光环助手\"发生错误"); + Utils.toast(mContext.getApplicationContext(), "\"光环助手\"发生错误"); Looper.loop(); } }); diff --git a/app/src/main/java/com/gh/base/BaseAppCompatToolBarActivity.java b/app/src/main/java/com/gh/base/BaseAppCompatToolBarActivity.java index bbdca55129..d63f2db6e6 100644 --- a/app/src/main/java/com/gh/base/BaseAppCompatToolBarActivity.java +++ b/app/src/main/java/com/gh/base/BaseAppCompatToolBarActivity.java @@ -7,18 +7,14 @@ import android.view.View; import com.gh.gamecenter.R; import com.lightgame.BaseAppCompatActivity; -import com.lightgame.ToolbarContainer; -import com.lightgame.ToolbarController; -import com.readystatesoftware.systembartint.SystemBarTintManager; /** * Created by csheng on 15-10-12. */ -@ToolbarContainer -public abstract class BaseAppCompatToolBarActivity extends BaseAppCompatActivity implements ToolbarController { + +public abstract class BaseAppCompatToolBarActivity extends BaseAppCompatActivity { private Toolbar mToolbar; - private SystemBarTintManager mTintManager; @Override @@ -47,23 +43,4 @@ public abstract class BaseAppCompatToolBarActivity extends BaseAppCompatActivity protected abstract boolean onNavigationIconClicked(); - @Override - public void setNavigationTitle(int res) { - if (mToolbar != null) { - mToolbar.setTitle(res); - } - } - - @Override - public void setNavigationTitle(CharSequence res) { - if (mToolbar != null) { - mToolbar.setTitle(res); - } - } - - @Override - public Toolbar getToolBar() { - return mToolbar; - } - } diff --git a/app/src/main/java/com/gh/base/fragment/BaseFragment.java b/app/src/main/java/com/gh/base/fragment/BaseFragment.java index 8eb65f7b6c..84e8b895a6 100644 --- a/app/src/main/java/com/gh/base/fragment/BaseFragment.java +++ b/app/src/main/java/com/gh/base/fragment/BaseFragment.java @@ -3,9 +3,7 @@ package com.gh.base.fragment; import android.os.Bundle; import android.support.annotation.LayoutRes; import android.support.annotation.Nullable; -import android.support.annotation.StringRes; import android.support.v4.app.Fragment; -import android.support.v7.widget.Toolbar; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -14,7 +12,6 @@ import com.gh.base.OnListClickListener; import com.gh.base.OnRequestCallBackListener; import com.gh.common.util.EntranceUtils; import com.gh.gamecenter.eventbus.EBMiPush; -import com.lightgame.ToolbarController; import com.lightgame.utils.RuntimeUtils; import com.lightgame.utils.Utils; @@ -32,7 +29,7 @@ import rx.schedulers.Schedulers; * Fragment 基类 */ public abstract class BaseFragment extends Fragment implements OnRequestCallBackListener, - View.OnClickListener, ToolbarController, OnListClickListener{ + View.OnClickListener, OnListClickListener{ // TODO private view protected View view; @@ -70,28 +67,6 @@ public abstract class BaseFragment extends Fragment implements OnRequestCallB RuntimeUtils.getInstance().runOnUiThread(runnable, delayMillis); } - @Override - public void setNavigationTitle(@StringRes int res) { - if (getActivity() instanceof ToolbarController) { - ((ToolbarController) getActivity()).setNavigationTitle(res); - } - } - - @Override - public void setNavigationTitle(CharSequence res) { - if (getActivity() instanceof ToolbarController) { - ((ToolbarController) getActivity()).setNavigationTitle(res); - } - } - - @Override - public Toolbar getToolBar() { - if (getActivity() instanceof ToolbarController) { - return ((ToolbarController) getActivity()).getToolBar(); - } - return null; - } - @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/app/src/main/java/com/gh/common/util/GetLoginDataUtils.java b/app/src/main/java/com/gh/common/util/GetLoginDataUtils.java index 573f097ea3..86c8876e5e 100644 --- a/app/src/main/java/com/gh/common/util/GetLoginDataUtils.java +++ b/app/src/main/java/com/gh/common/util/GetLoginDataUtils.java @@ -235,12 +235,12 @@ public class GetLoginDataUtils { @Override public void cancel() { - Utils.toastLong(mContext, "取消授权"); + Utils.toast(mContext, "取消授权"); } @Override public void onFailure(WbConnectErrorMessage errorMessage) { - Utils.toastLong(mContext, "微博登录需要客户端支持,请先安装微博"); + Utils.toast(mContext, "微博登录需要客户端支持,请先安装微博"); } } diff --git a/app/src/main/java/com/gh/common/util/LibaoUtils.java b/app/src/main/java/com/gh/common/util/LibaoUtils.java index 79cf7c3f58..3bd1947d4b 100644 --- a/app/src/main/java/com/gh/common/util/LibaoUtils.java +++ b/app/src/main/java/com/gh/common/util/LibaoUtils.java @@ -262,7 +262,7 @@ public class LibaoUtils { if (status.equals("repeatLing")) { DialogUtils.showWarningDialog(context, "礼包刷新提醒" , "礼包每天0点刷新,换新区或者换新角色需要继续领取礼包的童鞋,请于明天0点之后回来即可[再领一个]" - , "知道了", null, null, null); + , null, "知道了", null, null); } else { libaoLing(context, libaoBtn, libaoEntity, adapter, isInstallRequired, null, entrance); } diff --git a/app/src/main/java/com/gh/common/util/LoginUtils.java b/app/src/main/java/com/gh/common/util/LoginUtils.java index b249474b6a..cd5f547c64 100644 --- a/app/src/main/java/com/gh/common/util/LoginUtils.java +++ b/app/src/main/java/com/gh/common/util/LoginUtils.java @@ -219,9 +219,13 @@ public class LoginUtils { LoginUtils.cleanUserData(context); } else { - Utils.toast(context, context.getString(R.string.login_failure_hint)); - if (loginTag.equals(LoginTag.qq)) { - GetLoginDataUtils.getInstance(context).QQLogout(); + if (loginTag.equals(LoginTag.phone)) { + outputErrorHint(context, code); + } else { + if (loginTag.equals(LoginTag.qq)) { + GetLoginDataUtils.getInstance(context).QQLogout(); + } + Utils.toast(context, context.getString(R.string.login_failure_hint)); } } } catch (Exception e1) { diff --git a/app/src/main/java/com/gh/gamecenter/SettingActivity.java b/app/src/main/java/com/gh/gamecenter/SettingActivity.java index 1a58fdc93a..8aae955689 100644 --- a/app/src/main/java/com/gh/gamecenter/SettingActivity.java +++ b/app/src/main/java/com/gh/gamecenter/SettingActivity.java @@ -32,6 +32,8 @@ import com.gh.gamecenter.personal.PersonalFragment; import com.kyleduo.switchbutton.SwitchButton; import com.lightgame.download.FileUtils; import com.lightgame.utils.Utils; +import com.tencent.bugly.beta.Beta; +import com.tencent.bugly.beta.UpgradeInfo; import org.greenrobot.eventbus.EventBus; @@ -259,6 +261,18 @@ public class SettingActivity extends BaseActivity implements OnClickListener { fontSize(); break; case setting_rl_about: + if (BuildConfig.DEBUG) { + Beta.checkUpgrade(); // 手动检查热补丁 + mSettingLoginType.postDelayed(new Runnable() { + @Override + public void run() { + UpgradeInfo upgradeInfo = Beta.getUpgradeInfo(); + if (upgradeInfo != null) { + toast("补丁包大小:" + upgradeInfo.fileSize); + } + } + }, 5000); + } startActivity(AboutActivity.getIntent(this)); break; case R.id.setting_rl_concerngame: diff --git a/app/src/main/java/com/gh/gamecenter/adapter/ConcernRecommendAdapter.java b/app/src/main/java/com/gh/gamecenter/adapter/ConcernRecommendAdapter.java index a0175aa2b6..ded340b7a7 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/ConcernRecommendAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/ConcernRecommendAdapter.java @@ -92,15 +92,19 @@ public class ConcernRecommendAdapter extends BaseRecyclerAdapter>() { @Override public void onResponse(List response) { - for (GameEntity gameEntity : response) { - ApkActiveUtils.filterHideApk(gameEntity); - for (int i = 0, size = mRecommendGameList.size(); i < size; i++) { // 过滤已安装游戏(init() 已经获取) - if (gameEntity.getId().equals(mRecommendGameList.get(i).getId())) { - break; - } else if (i + 1 == size) { - mRecommendGameList.add(gameEntity); + if (mRecommendGameList != null && mRecommendGameList.size() > 0) { + for (GameEntity gameEntity : response) { + ApkActiveUtils.filterHideApk(gameEntity); + for (int i = 0, size = mRecommendGameList.size(); i < size; i++) { // 过滤已安装游戏(init() 已经获取) + if (gameEntity.getId().equals(mRecommendGameList.get(i).getId())) { + break; + } else if (i + 1 == size) { + mRecommendGameList.add(gameEntity); + } } } + } else { + mRecommendGameList.addAll(response); } if (mConcernGameList != null) { // 过滤已关注的游戏 diff --git a/app/src/main/java/com/gh/gamecenter/libao/LibaoFragment.java b/app/src/main/java/com/gh/gamecenter/libao/LibaoFragment.java index cc045417bd..0abc707906 100644 --- a/app/src/main/java/com/gh/gamecenter/libao/LibaoFragment.java +++ b/app/src/main/java/com/gh/gamecenter/libao/LibaoFragment.java @@ -75,12 +75,6 @@ public class LibaoFragment extends BaseFragment_ViewPager_Checkable { setHasOptionsMenu(true); } - @Override - public void onResume() { - super.onResume(); - setNavigationTitle(R.string.personal_libao); - } - @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); diff --git a/app/src/main/java/com/gh/gamecenter/login/BaseLoginFragment.java b/app/src/main/java/com/gh/gamecenter/login/BaseLoginFragment.java index 9aa4655687..ba4c817abd 100644 --- a/app/src/main/java/com/gh/gamecenter/login/BaseLoginFragment.java +++ b/app/src/main/java/com/gh/gamecenter/login/BaseLoginFragment.java @@ -17,6 +17,7 @@ import android.widget.TextView; import com.gh.base.fragment.BaseFragment; import com.gh.common.util.DialogUtils; +import com.gh.common.util.GetLoginDataUtils; import com.gh.common.util.LoginUtils; import com.gh.common.util.PatternUtils; import com.gh.gamecenter.R; @@ -38,7 +39,7 @@ import butterknife.BindView; */ public abstract class BaseLoginFragment extends BaseFragment implements LoginUtils.onCaptchaCallBackListener - ,LoginUtils.onLoginCallBackListener, View.OnClickListener { + , LoginUtils.onLoginCallBackListener, GetLoginDataUtils.OnLoginDataListener, View.OnClickListener { @BindView(R.id.login_phone_et) EditText mLoginPhoneEt; @@ -157,7 +158,7 @@ public abstract class BaseLoginFragment extends BaseFragment implements LoginUti } else { phone = LoginUtils.LoginTag.phone; } - LoginUtils.login(getActivity(), new JSONObject(params), phone, this); + OnLoginData(new JSONObject(params), phone); } @@ -178,6 +179,13 @@ public abstract class BaseLoginFragment extends BaseFragment implements LoginUti } } + /** + * {@link LoginFragment#OnLoginData} + */ + @Override + public void OnLoginData(JSONObject content, LoginUtils.LoginTag loginTag) { + } + @Override public void onLogin(UserInfoEntity entity, LoginUtils.LoginTag loginTag) { // 登录成功 Utils.log("======登录成功" + entity.getIcon() + "==" + entity.getName()); diff --git a/app/src/main/java/com/gh/gamecenter/login/LoginFragment.java b/app/src/main/java/com/gh/gamecenter/login/LoginFragment.java index 2c18f86d6e..3d44b34e40 100644 --- a/app/src/main/java/com/gh/gamecenter/login/LoginFragment.java +++ b/app/src/main/java/com/gh/gamecenter/login/LoginFragment.java @@ -19,7 +19,7 @@ import butterknife.OnClick; * Created by khy on 14/08/17. */ -public class LoginFragment extends BaseLoginFragment implements GetLoginDataUtils.OnLoginDataListener { +public class LoginFragment extends BaseLoginFragment { @BindView(R.id.login_qq_btn) LinearLayout mLoginQqBtn; diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java index 667b593dd7..02d1a56134 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java +++ b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java @@ -7,14 +7,12 @@ import com.gh.gamecenter.Injection; import com.gh.gamecenter.retrofit.service.ApiService; import com.gh.gamecenter.retrofit.service.DataService; import com.gh.gamecenter.retrofit.service.UserseaService; -import com.lightgame.utils.Utils; import java.io.File; import java.util.concurrent.TimeUnit; import okhttp3.Cache; import okhttp3.OkHttpClient; -import okhttp3.logging.HttpLoggingInterceptor; import retrofit2.Retrofit; import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory; @@ -40,28 +38,11 @@ public class RetrofitManager { } private RetrofitManager(Context context) { - HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(String message) { - //分段打印retrofit日志 - if(message.length() > 4000) { - for(int i=0;i refreshToken(@Body RequestBody body); /** * 修改用户信息 */ @Headers({"Content-Type: application/json", "Accept: application/json"}) - @PATCH("meta") + @PATCH("users/meta") Observable changeUserInfo(@Body RequestBody body); /** diff --git a/app/src/main/res/layout/fragment_news2.xml b/app/src/main/res/layout/fragment_news2.xml index 8b96d19282..a4e8310190 100644 --- a/app/src/main/res/layout/fragment_news2.xml +++ b/app/src/main/res/layout/fragment_news2.xml @@ -90,6 +90,8 @@ android:layout_width = "match_parent" android:layout_height = "wrap_content" android:layout_marginBottom = "8dp" + android:paddingBottom="15dp" + android:paddingTop="15dp" android:layout_marginLeft = "8dp" android:layout_marginRight = "8dp" android:background = "@drawable/reuse_listview_item_style" diff --git a/app/src/main/res/layout/fragment_personal.xml b/app/src/main/res/layout/fragment_personal.xml index b8eae3d6ce..765c354e18 100644 --- a/app/src/main/res/layout/fragment_personal.xml +++ b/app/src/main/res/layout/fragment_personal.xml @@ -88,7 +88,7 @@ android:layout_height = "wrap_content" android:layout_marginTop = "14dp" android:text = "@string/QQ" - android:textSize="15sp" + android:textSize="14sp" android:textColor = "@color/title" /> @@ -128,7 +128,7 @@ android:layout_height = "wrap_content" android:layout_marginTop = "14dp" android:text = "@string/wechat" - android:textSize="15sp" + android:textSize="14sp" android:textColor = "@color/title" /> @@ -169,7 +169,7 @@ android:layout_height = "wrap_content" android:layout_marginTop = "14dp" android:text = "@string/sina_weibo" - android:textSize="15sp" + android:textSize="14sp" android:textColor = "@color/title" />