Skip to content

Commit 6970d78

Browse files
committed
修复线上BUG,解决登录后我的专栏重叠问题
1 parent 74c62df commit 6970d78

File tree

27 files changed

+156
-104
lines changed

27 files changed

+156
-104
lines changed

.idea/modules.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/com/rae/cnblogs/MainActivity.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import com.rae.cnblogs.basic.AppFragmentAdapter;
2323
import com.rae.cnblogs.basic.BasicActivity;
2424
import com.rae.cnblogs.basic.rx.AndroidObservable;
25-
import com.rae.cnblogs.blog.CnblogsService;
2625
import com.rae.cnblogs.dialog.DefaultDialogFragment;
2726
import com.rae.cnblogs.dialog.VersionDialogFragment;
2827
import com.rae.cnblogs.home.main.MainContract;
@@ -35,8 +34,6 @@
3534
import com.rae.cnblogs.sdk.bean.VersionInfo;
3635
import com.rae.cnblogs.sdk.event.PostMomentEvent;
3736
import com.rae.cnblogs.sdk.event.UserInfoChangedEvent;
38-
import com.rae.cnblogs.theme.AppThemeManager;
39-
import com.rae.cnblogs.theme.ThemeCompat;
4037
import com.rae.cnblogs.widget.ITopScrollable;
4138
import com.umeng.socialize.UMShareAPI;
4239

@@ -47,7 +44,6 @@
4744
import io.reactivex.ObservableSource;
4845
import io.reactivex.functions.Function;
4946
import io.reactivex.schedulers.Schedulers;
50-
import skin.support.SkinCompatManager;
5147

5248
@Route(path = AppRoute.PATH_APP_HOME)
5349
public class MainActivity extends BasicActivity implements MainContract.View, RaeTabLayout.OnTabSelectedListener {
@@ -71,18 +67,9 @@ protected void onCreate(Bundle savedInstanceState) {
7167
super.onCreate(savedInstanceState);
7268
setContentView(R.layout.activity_main);
7369
mPresenter = new MainPresenterImpl(this);
74-
7570
initTab();
76-
7771
// 请求权限
7872
requestPermissions();
79-
80-
// 启动服务
81-
startService(new Intent(this, CnblogsService.class));
82-
83-
// if (BuildConfig.DEBUG) {
84-
// debugLogin();
85-
// }
8673
}
8774

8875

module-blog/src/main/java/com/rae/cnblogs/blog/BlogRouteDialogFragment.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,13 @@ public void onLoadData(ContentEntity entity) {
5858

5959
@Override
6060
public void onLoadDataFailed(String message) {
61-
// 失败后,自动跳转网页
62-
AppRoute.routeToWeb(getContext(), mUrl);
63-
dismiss();
61+
try {
62+
// 失败后,自动跳转网页
63+
AppRoute.routeToWeb(getContext(), mUrl);
64+
dismiss();
65+
} catch (Exception ex) {
66+
ex.printStackTrace();
67+
}
6468
}
6569

6670
@Override

module-blog/src/main/java/com/rae/cnblogs/blog/ContentDetailActivity.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.google.gson.Gson;
1212
import com.rae.cnblogs.AppRoute;
1313
import com.rae.cnblogs.ContentEntityConverter;
14+
import com.rae.cnblogs.UICompat;
1415
import com.rae.cnblogs.activity.SwipeBackBasicActivity;
1516
import com.rae.cnblogs.basic.ContentEntity;
1617
import com.rae.cnblogs.basic.rx.AndroidObservable;
@@ -80,6 +81,10 @@ protected void accept(BlogBean blogBean) {
8081
}
8182

8283
private void initBlogFragment(ContentEntity entity) {
84+
if (entity == null) {
85+
UICompat.failed(this, "博客实体为空");
86+
return;
87+
}
8388
BlogDetailFragment fragment = BlogDetailFragment.newInstance(entity);
8489
getSupportFragmentManager()
8590
.beginTransaction()

module-blog/src/main/java/com/rae/cnblogs/blog/content/BasicBlogPresenterImpl.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,8 +187,6 @@ private void saveLocalData(List<BlogBean> data) {
187187
public void onNext(List<BlogBean> blogBeans) {
188188
// 入库
189189
DbFactory.getInstance().getBlog().addAll(blogBeans);
190-
// 入库完成后,清除数据
191-
blogBeans.clear();
192190
}
193191

194192
@Override

module-blog/src/main/java/com/rae/cnblogs/blog/detail/ContentDetailPresenterImpl.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,6 @@ public void loadBlogLocalStatus() {
226226
public void subscribe(ObservableEmitter<UserBlogInfo> e) {
227227
UserBlogInfo blogInfo = DbFactory.getInstance().getBlog().get(getView().getContentEntity().getId());
228228
if (blogInfo == null) {
229-
e.onError(new NullPointerException("blog is null"));
230229
return;
231230
}
232231
e.onNext(blogInfo);

module-blog/src/main/java/com/rae/cnblogs/blog/feed/FeedPresenterImpl.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
package com.rae.cnblogs.blog.feed;
22

3-
import android.support.annotation.NonNull;
4-
53
import com.rae.cnblogs.basic.BasicPresenter;
64
import com.rae.cnblogs.basic.rx.AndroidObservable;
7-
import com.rae.cnblogs.basic.rx.LifecycleProvider;
85
import com.rae.cnblogs.sdk.ApiDefaultObserver;
96
import com.rae.cnblogs.sdk.CnblogsApiFactory;
107
import com.rae.cnblogs.sdk.bean.UserFeedBean;
@@ -24,13 +21,6 @@ public FeedPresenterImpl(FeedContract.View view) {
2421
super(view);
2522
}
2623

27-
@NonNull
28-
@Override
29-
public LifecycleProvider getLifecycleProvider() {
30-
return null;
31-
}
32-
33-
3424
@Override
3525
protected void onStart() {
3626
mPage = 1;

module-blog/src/main/java/com/rae/cnblogs/blog/fragment/CommentFragment.java

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -246,16 +246,20 @@ public void onPostComment(EditCommentDialogFragment dialog, String content, @Nul
246246
* @param comment 引用的评论,可为空
247247
*/
248248
private void showCommentDialog(@Nullable BlogCommentBean comment) {
249-
EditCommentDialogFragment.Entry<BlogCommentBean> entry = null;
250-
if (comment != null) {
251-
entry = new EditCommentDialogFragment.Entry<>();
252-
entry.setAuthorName(comment.getAuthorName());
253-
entry.setContent(comment.getBody());
254-
entry.setSource(comment);
255-
}
249+
try {
250+
EditCommentDialogFragment.Entry<BlogCommentBean> entry = null;
251+
if (comment != null) {
252+
entry = new EditCommentDialogFragment.Entry<>();
253+
entry.setAuthorName(comment.getAuthorName());
254+
entry.setContent(comment.getBody());
255+
entry.setSource(comment);
256+
}
256257

257-
mEditCommentDialogFragment = EditCommentDialogFragment.newInstance(EditCommentDialogFragment.FROM_TYPE_BLOG, entry);
258-
mEditCommentDialogFragment.show(getChildFragmentManager(), "EditCommentDialogFragment");
258+
mEditCommentDialogFragment = EditCommentDialogFragment.newInstance(EditCommentDialogFragment.FROM_TYPE_BLOG, entry);
259+
mEditCommentDialogFragment.show(getChildFragmentManager(), "EditCommentDialogFragment");
260+
} catch (Exception ex) {
261+
ex.printStackTrace();
262+
}
259263
}
260264

261265
@Override

module-blog/src/main/java/com/rae/cnblogs/blog/fragment/MultipleTypeBlogListFragment.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,8 @@ public void onLoginExpired() {
210210

211211
@Override
212212
public void scrollToTop() {
213+
if (mRecyclerView == null) return;
214+
213215
if (mRecyclerView.isOnTop()) {
214216
mAppLayout.autoRefresh();
215217
} else {

module-discover/src/main/java/com/rae/cnblogs/discover/fragment/AntColumnFragment.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ public void onNoMoreData() {
138138

139139
@Override
140140
public void onEmptyData(String msg) {
141+
dismissLogin();
141142
mRefreshLayout.setRefreshing(false);
142143
mAdapter.showEmpty(msg);
143144
mAdapter.loadMoreComplete();

module-discover/src/main/java/com/rae/cnblogs/discover/ui/AntColumnActivity.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.List;
2222

2323
import butterknife.BindView;
24+
import butterknife.OnClick;
2425

2526

2627
/**
@@ -50,6 +51,11 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
5051
mViewPager.setCurrentItem(position);
5152
}
5253

54+
@OnClick(R2.id.img_question)
55+
public void onQuestionClick() {
56+
AppRoute.routeToAntColumnWeb(this, getString(R.string.url_antcode_about));
57+
}
58+
5359
class AntColumnAdapter extends FragmentPagerAdapter {
5460
private final List<String> titles = new ArrayList<>();
5561
private final List<Integer> mTypes = new ArrayList<>();

module-discover/src/main/res/layout/activity_ant_column.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,14 @@
5252
app:tabTextAppearance="@style/TabTextAppearance.Ant"
5353
app:tabTextColor="#FF4A4A4A" />
5454

55+
<ImageView
56+
android:id="@+id/img_question"
57+
android:layout_width="wrap_content"
58+
android:layout_height="wrap_content"
59+
android:layout_gravity="end|center"
60+
android:layout_marginEnd="18dp"
61+
android:src="@drawable/icon_column_question" />
62+
5563
</android.support.v7.widget.FitWindowsFrameLayout>
5664

5765

module-discover/src/main/res/layout/item_discover_mine_column.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
android:paddingBottom="2dp"
5454
android:text="18讲"
5555
android:textColor="#FF9B9B9B"
56-
android:textSize="12sp"/>
56+
android:textSize="12sp" />
5757

5858
<TextView
5959
android:id="@+id/tv_author"
@@ -79,7 +79,9 @@
7979
android:layout_height="0dp"
8080
android:layout_marginTop="7dp"
8181
android:layout_weight="1"
82+
android:ellipsize="end"
8283
android:lineSpacingMultiplier="1.2"
84+
android:lines="2"
8385
android:text="--"
8486
android:textColor="#FF878C97"
8587
android:textSize="13sp"

module-discover/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@
1212
<string name="study_now">立即学习</string>
1313
<string name="format_article_updated">已更新%d篇文章</string>
1414
<string name="unsubscribe_success">取消订阅成功</string>
15+
<string name="url_antcode_about">https://app.mayizhuanlan.com/about</string>
1516
</resources>

module-home/src/main/java/com/rae/cnblogs/home/MineFragment.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,7 @@ public void onFansClick() {
181181

182182
@OnClick(R2.id.layout_account_follow)
183183
public void onFollowClick() {
184+
if (UserProvider.getInstance().isNotLogin()) return;
184185
AppRoute.routeToFollow(this.getContext(), getString(R.string.me), UserProvider.getInstance().getLoginUserInfo().getBlogApp());
185186
}
186187

module-middleware/src/main/java/com/rae/cnblogs/AppRoute.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import com.rae.cnblogs.sdk.bean.CategoryBean;
2121
import com.rae.cnblogs.sdk.bean.MomentBean;
2222
import com.rae.cnblogs.sdk.model.MomentMetaData;
23+
import com.tencent.bugly.crashreport.CrashReport;
2324

2425
import org.json.JSONObject;
2526

@@ -251,9 +252,14 @@ public static void route(Context context, String path) {
251252
* 博客正文界面
252253
*/
253254
public static void routeToContentDetail(Context context, ContentEntity entity) {
254-
ARouter.getInstance().build(PATH_CONTENT_DETAIL)
255-
.withParcelable("entity", entity)
256-
.navigation(context);
255+
try {
256+
ARouter.getInstance().build(PATH_CONTENT_DETAIL)
257+
.withParcelable("entity", entity)
258+
.navigation(context);
259+
} catch (Exception ex) {
260+
CrashReport.postCatchedException(new RuntimeException("跳转到博文详情异常", ex));
261+
UICompat.failed(context, "跳转异常");
262+
}
257263
}
258264

259265
/**

module-middleware/src/main/java/com/rae/cnblogs/CnblogsApplication.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.rae.cnblogs;
22

3+
import android.content.Intent;
34
import android.util.Log;
45

56
import com.antcode.sdk.AntCodeSDK;
@@ -33,6 +34,8 @@ public class CnblogsApplication extends BasicApplication implements SkinObserver
3334
protected void onFirstCreate() {
3435
super.onFirstCreate();
3536

37+
startCnblogServices();
38+
3639
QMUISwipeBackActivityManager.init(this);
3740

3841
// 主题初始化
@@ -57,6 +60,18 @@ protected void onFirstCreate() {
5760
// Bugly
5861
CrashReport.initCrashReport(this, BuildConfig.BUGLY_APP_ID, BuildConfig.DEBUG);
5962
initUMConfig();
63+
64+
}
65+
66+
// 启动博客园服务
67+
private void startCnblogServices() {
68+
try {
69+
Intent serviceIntent = new Intent();
70+
serviceIntent.setClassName(getPackageName(), "com.rae.cnblogs.blog.CnblogsService");
71+
startService(serviceIntent);
72+
} catch (Exception ex) {
73+
Log.e("Rae", "启动博客园服务失败", ex);
74+
}
6075
}
6176

6277
public void clearCache() {

module-resource/src/main/res/xml/app_file_paths.xml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,14 @@
33
<cache-path
44
name="cache_path"
55
path="/" />
6-
<external-path name="external_files" path="."/>
6+
<external-path
7+
name="external_files"
8+
path="." />
9+
10+
<root-path
11+
name="camera_photos"
12+
path="." />
13+
714
<external-cache-path
815
name="external-cache-path"
916
path="/" />

module-sdk/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ dependencies {
4242
implementation rootProject.ext.dependencies.greendao
4343

4444

45-
api 'com.antcode:sdk:1.0.1'
45+
api 'com.antcode:sdk:1.0.2'
4646
// api rootProject.ext.dependencies.rxjava
4747
// api rootProject.ext.dependencies.rxandroid
4848
api rootProject.ext.dependencies.jsoup

module-sdk/src/main/java/com/rae/cnblogs/sdk/db/DbCategory.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,12 @@ public class DbCategory {
2525
* @param list 数据
2626
*/
2727
public void reset(final List<CategoryBean> list) {
28-
mSession.getCategoryBeanDao().deleteAll();
29-
mSession.getCategoryBeanDao().insertInTx(list);
28+
try {
29+
mSession.getCategoryBeanDao().deleteAll();
30+
mSession.getCategoryBeanDao().insertInTx(list);
31+
} catch (Exception ex) {
32+
ex.printStackTrace();
33+
}
3034

3135
}
3236

0 commit comments

Comments
 (0)