Skip to content

Commit 709e2b6

Browse files
committed
Adding null checks for novel info activity.
This is also for mitigating: ``` Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'byte[] java.lang.String.getBytes()' on a null object reference at org.mewx.wenku8.global.GlobalConfig.writeFullSaveFileContent(GlobalConfig.java:64) at org.mewx.wenku8.global.GlobalConfig.writeFullFileIntoSaveFolder(GlobalConfig.java:17) at org.mewx.wenku8.activity.NovelInfoActivity.lambda$onCreate$6(NovelInfoActivity.java:214) at android.view.View.performClick(View.java:7664) at android.view.View.performClickInternal(View.java:7638) at android.view.View.access$3800(View.java:878) at android.view.View$PerformClick.run(View.java:29899) at android.os.Handler.handleCallback(Handler.java:966) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loopOnce(Looper.java:205) at android.os.Looper.loop(Looper.java:293) at android.app.ActivityThread.main(ActivityThread.java:9596) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:586) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1204) ```
1 parent b8b0323 commit 709e2b6

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

studio-android/LightNovelLibrary/app/src/main/java/org/mewx/wenku8/activity/NovelInfoActivity.java

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -233,15 +233,28 @@ public void onMenuCollapsed() {
233233
}
234234
else {
235235
// not in bookshelf, add it to.
236-
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid + "-intro.xml", novelFullMeta);
237-
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid + "-introfull.xml", novelFullIntro);
238-
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid+ "-volume.xml", novelFullVolume);
239-
GlobalConfig.addToLocalBookshelf(aid);
240-
if (GlobalConfig.testInLocalBookshelf(aid)) { // in
241-
Toast.makeText(NovelInfoActivity.this, getResources().getString(R.string.bookshelf_added), Toast.LENGTH_SHORT).show();
242-
fabFavorite.setIcon(R.drawable.ic_favorate_pressed);
236+
if (novelFullMeta == null || novelFullIntro == null || novelFullVolume == null) {
237+
ArrayList<String> nullStuff = new ArrayList<>();
238+
if (novelFullMeta == null) nullStuff.add("meta");
239+
if (novelFullIntro == null) nullStuff.add("intro");
240+
if (novelFullVolume == null) nullStuff.add("volume");
241+
Bundle somethingIsNull = new Bundle();
242+
somethingIsNull.putStringArrayList("novel_info_save_null", nullStuff);
243+
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM, somethingIsNull);
244+
245+
Toast.makeText(NovelInfoActivity.this, getResources().getString(R.string.system_loading_please_wait), Toast.LENGTH_SHORT).show();
243246
} else {
244-
Toast.makeText(NovelInfoActivity.this, getResources().getString(R.string.bookshelf_error), Toast.LENGTH_SHORT).show();
247+
// No null text.
248+
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid + "-intro.xml", novelFullMeta);
249+
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid + "-introfull.xml", novelFullIntro);
250+
GlobalConfig.writeFullFileIntoSaveFolder("intro", aid + "-volume.xml", novelFullVolume);
251+
GlobalConfig.addToLocalBookshelf(aid);
252+
if (GlobalConfig.testInLocalBookshelf(aid)) { // in
253+
Toast.makeText(NovelInfoActivity.this, getResources().getString(R.string.bookshelf_added), Toast.LENGTH_SHORT).show();
254+
fabFavorite.setIcon(R.drawable.ic_favorate_pressed);
255+
} else {
256+
Toast.makeText(NovelInfoActivity.this, getResources().getString(R.string.bookshelf_error), Toast.LENGTH_SHORT).show();
257+
}
245258
}
246259
}
247260
});

0 commit comments

Comments
 (0)