Skip to content

Commit

Permalink
see 04/08 log
Browse files Browse the repository at this point in the history
  • Loading branch information
Blankj committed Apr 7, 2020
1 parent 35de0c4 commit 4605277
Show file tree
Hide file tree
Showing 19 changed files with 159 additions and 76 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
* `20/04/08` [fix] CrashUtils DefaultUncaughtExceptionHandler is wrong; LogUtils write file failed. Publish v1.27.3.
* `20/04/07` [mdf] GsonUtils#getGson() method public.
* `20/04/04` [fix] ShadowUtils bug running on lower version devices. Publish v1.27.2.
* `20/04/03` [fix] UtilsActivityLifecycleImpl#HashMap#remove IllegalStateException bug.
* `20/04/02` [fix] PathUtils sdcard enable state is wrong; ActivityUtils finish activity wrong; Publish v1.27.1.
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/src/main/groovy/Config.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class Config {
static minSdkVersion = 14
static targetSdkVersion = 29
static versionCode = 1_026_001
static versionName = '1.27.2'// E.g. 1.9.72 => 1,009,072
static versionName = '1.27.3'// E.g. 1.9.72 => 1,009,072

// lib version
static gradlePluginVersion = '3.5.0'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,12 @@ class ReadmeCorePlugin implements Plugin<Project> {
def sb = new StringBuilder()
readmeCN.eachLine { line ->
if (line.contains("* ###")) {
String utilsName = line.substring(line.indexOf("[") + 1, line.indexOf("Utils"))
sb.append("* ### About ").append(utilsName).append(line.substring(line.indexOf(" -> ")))
if (line.contains("UtilsTransActivity")) {
sb.append(line)
} else {
String utilsName = line.substring(line.indexOf("[") + 1, line.indexOf("Utils"))
sb.append("* ### About ").append(utilsName).append(line.substring(line.indexOf(" -> ")))
}
} else if (line.contains(": ") && !line.contains("[")) {
sb.append(line.substring(0, line.indexOf(':')).trim())
} else if (line.contains("打个小广告") || line.contains("知识星球") || line.contains("我的二维码")) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ package com.blankj.utilcode.pkg.feature

import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.widget.TextView
import com.blankj.common.activity.CommonActivity
import com.blankj.common.item.CommonItem
import com.blankj.common.item.CommonItemClick
Expand Down Expand Up @@ -43,6 +45,7 @@ import com.blankj.utilcode.pkg.feature.span.SpanActivity
import com.blankj.utilcode.pkg.feature.toast.ToastActivity
import com.blankj.utilcode.pkg.feature.vibrate.VibrateActivity
import com.blankj.utilcode.util.CollectionUtils
import com.blankj.utilcode.util.UtilsTransActivity

/**
* ```
Expand Down Expand Up @@ -175,6 +178,15 @@ class CoreUtilActivity : CommonActivity() {
CommonItemClick(R.string.demo_toast, true) {
ToastActivity.start(this)
},
CommonItemClick(R.string.demo_trans_activity, true) {
UtilsTransActivity.start(this, object : UtilsTransActivity.TransActivityDelegate() {
override fun onCreated(activity: UtilsTransActivity, savedInstanceState: Bundle?) {
super.onCreated(activity, savedInstanceState)
activity.setContentView(R.layout.common_dialog_loading)
activity.findViewById<TextView>(R.id.utilActionLoadingMsgTv).text = "Trans Activity is showing..."
}
})
},
CommonItemClick(R.string.demo_vibrate, true) {
VibrateActivity.start(this)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public void requestUpdateMsg(final Utils.Consumer<String> consumer) {
ThreadUtils.executeByCached(addAutoDestroyTask(new ThreadUtils.SimpleTask<String>() {
@Override
public String doInBackground() throws Throwable {
Thread.sleep(1000);
Thread.sleep(2000);
return "msg: " + index++;
}

Expand Down
1 change: 1 addition & 0 deletions feature/utilcode/pkg/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
<string name="demo_spStatic">SPStaticUtils Demo</string>
<string name="demo_span">SpanUtils Demo</string>
<string name="demo_toast">ToastUtils Demo</string>
<string name="demo_trans_activity">TransActivity Demo</string>
<string name="demo_vibrate">VibrateUtils Demo</string>

<!--Activity 相关-->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ private void initCrash() {
@Override
public void onCrash(String crashInfo, Throwable e) {
LogUtils.e(crashInfo);
AppUtils.relaunchApp(true);
AppUtils.relaunchApp();
}
});
}
Expand Down
30 changes: 16 additions & 14 deletions lib/base/src/main/java/com/blankj/base/mvp/BasePresenter.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.blankj.base.mvp;

import android.app.Activity;
import android.arch.lifecycle.Lifecycle;
import android.arch.lifecycle.LifecycleObserver;
import android.arch.lifecycle.LifecycleOwner;
import android.arch.lifecycle.OnLifecycleEvent;
import android.support.annotation.CallSuper;
import android.support.annotation.NonNull;

import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.Utils;

import java.util.HashMap;
import java.util.Map;
Expand All @@ -19,7 +19,7 @@
* desc :
* </pre>
*/
public abstract class BasePresenter<V extends BaseView> implements LifecycleObserver {
public abstract class BasePresenter<V extends BaseView> extends Utils.ActivityLifecycleCallbacks {

private V mView;
private Map<Class, BaseModel> mModelMap = new HashMap<>();
Expand All @@ -29,6 +29,7 @@ public abstract class BasePresenter<V extends BaseView> implements LifecycleObse
void bindView(V view) {
this.mView = view;
onAttachView();
ActivityUtils.addActivityLifecycleCallbacks(mView.getActivity(), this);
}

public V getView() {
Expand All @@ -54,9 +55,16 @@ public <M extends BaseModel> M getModel(Class<M> modelClass) {
return null;
}

@CallSuper
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
public void onDestroyPresenter() {
@Override
public void onLifecycleChanged(@NonNull Activity activity, Lifecycle.Event event) {
super.onLifecycleChanged(activity, event);
if (event == Lifecycle.Event.ON_DESTROY) {
destroyPresenter();
}
LogUtils.i("onLifecycleChanged: " + event);
}

private void destroyPresenter() {
if (mView != null) {
mView.mPresenterMap.remove(this.getClass());
mView.onDestroyView();
Expand All @@ -67,11 +75,5 @@ public void onDestroyPresenter() {
}
}
mModelMap.clear();
LogUtils.i("onDestroyPresenter");
}

@OnLifecycleEvent(Lifecycle.Event.ON_ANY)
public void onLifecycleChanged(LifecycleOwner owner, Lifecycle.Event event) {
LogUtils.i(event.toString());
}
}
11 changes: 5 additions & 6 deletions lib/base/src/main/java/com/blankj/base/mvp/BaseView.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
package com.blankj.base.mvp;

import android.app.Activity;
import android.arch.lifecycle.Lifecycle;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;

import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.Utils;

import java.util.HashMap;
import java.util.Map;

Expand All @@ -19,20 +24,17 @@ public abstract class BaseView<V extends BaseView> {

private FragmentActivity mActivity;
private Fragment mFragment;
private Lifecycle mLifecycle;
Map<Class, BasePresenter<V>> mPresenterMap = new HashMap<>();

public abstract void onDestroyView();

public BaseView(FragmentActivity activity) {
mActivity = activity;
mLifecycle = activity.getLifecycle();
}

public BaseView(Fragment fragment) {
mFragment = fragment;
mActivity = fragment.getActivity();
mLifecycle = fragment.getLifecycle();
}

public <T extends FragmentActivity> T getActivity() {
Expand All @@ -49,9 +51,6 @@ public void addPresenter(BasePresenter<V> presenter) {
mPresenterMap.put(presenter.getClass(), presenter);
//noinspection unchecked
presenter.bindView((V) this);
if (mLifecycle != null) {
mLifecycle.addObserver(presenter);
}
}

public <P extends BasePresenter<V>> P getPresenter(Class<P> presenterClass) {
Expand Down
11 changes: 9 additions & 2 deletions lib/utilcode/README-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

Gradle:
```groovy
implementation 'com.blankj:utilcode:1.27.2'
implementation 'com.blankj:utilcode:1.27.3'
// if u use AndroidX, use the following
implementation 'com.blankj:utilcodex:1.27.2'
implementation 'com.blankj:utilcodex:1.27.3'
```


Expand Down Expand Up @@ -1143,6 +1143,11 @@ file2Uri: file 转 uri
uri2File: uri 转 file
```

* ### UtilsTransActivity -> [UtilsTransActivity.java][trans.java]
```
start: 启动透明 Activity
```

* ### 震动相关 -> [VibrateUtils.java][vibrate.java] -> [Demo][vibrate.demo]
```
vibrate: 震动
Expand Down Expand Up @@ -1365,6 +1370,8 @@ getComments : 获取压缩文件中的注释链表

[uri.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/UriUtils.java

[trans.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/UtilsTransActivity.java

[vibrate.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
[vibrate.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt

Expand Down
11 changes: 9 additions & 2 deletions lib/utilcode/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

Gradle:
```groovy
implementation 'com.blankj:utilcode:1.27.2'
implementation 'com.blankj:utilcode:1.27.3'
// if u use AndroidX, use the following
implementation 'com.blankj:utilcodex:1.27.2'
implementation 'com.blankj:utilcodex:1.27.3'
```


Expand Down Expand Up @@ -1143,6 +1143,11 @@ file2Uri
uri2File
```

* ### UtilsTransActivity -> [UtilsTransActivity.java][trans.java]
```
start
```

* ### About Vibrate -> [VibrateUtils.java][vibrate.java] -> [Demo][vibrate.demo]
```
vibrate
Expand Down Expand Up @@ -1362,6 +1367,8 @@ getComments

[uri.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/UriUtils.java

[trans.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/UtilsTransActivity.java

[vibrate.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/src/main/java/com/blankj/utilcode/util/VibrateUtils.java
[vibrate.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate/VibrateActivity.kt

Expand Down
8 changes: 4 additions & 4 deletions lib/utilcode/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,15 @@ dependencies {
testImplementation Config.depConfig.eventbus_lib.dep
}

afterEvaluate {
verifyReleaseResources.enabled(false)
}

apply from: "${rootDir.path}/gradle/publish.gradle"
publish {
name = "UtilCode"
groupId = Config.depConfig.lib_utilcode.groupId
artifactId = Config.depConfig.lib_utilcode.artifactId
version = Config.depConfig.lib_utilcode.version
website = "https://github.com/Blankj/AndroidUtilCode"
}

afterEvaluate {
verifyReleaseResources.enabled(false)
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ public final class CrashUtils {

private static final String FILE_SEP = System.getProperty("file.separator");

private static final UncaughtExceptionHandler DEFAULT_UNCAUGHT_EXCEPTION_HANDLER = Thread.getDefaultUncaughtExceptionHandler();

private CrashUtils() {
throw new UnsupportedOperationException("u can't instantiate me...");
}
Expand Down Expand Up @@ -79,7 +81,12 @@ public static void init(@NonNull final File crashDir, final OnCrashListener onCr
public static void init(final String crashDirPath, final OnCrashListener onCrashListener) {
String dirPath;
if (UtilsBridge.isSpace(crashDirPath)) {
dirPath = Utils.getApp().getFilesDir() + FILE_SEP + "crash" + FILE_SEP;
if (UtilsBridge.isSDCardEnableByEnvironment()
&& Utils.getApp().getExternalFilesDir(null) != null)
dirPath = Utils.getApp().getExternalFilesDir(null) + FILE_SEP + "crash" + FILE_SEP;
else {
dirPath = Utils.getApp().getFilesDir() + FILE_SEP + "crash" + FILE_SEP;
}
} else {
dirPath = crashDirPath.endsWith(FILE_SEP) ? crashDirPath : crashDirPath + FILE_SEP;
}
Expand All @@ -91,7 +98,7 @@ private static UncaughtExceptionHandler getUncaughtExceptionHandler(final String
return new UncaughtExceptionHandler() {
@Override
public void uncaughtException(@NonNull final Thread t, @NonNull final Throwable e) {
final String time = new SimpleDateFormat("MM-dd_HH-mm-ss").format(new Date());
final String time = new SimpleDateFormat("yyyy_MM_dd-HH_mm_ss").format(new Date());
final StringBuilder sb = new StringBuilder();
final String head = "************* Log Head ****************" +
"\nTime Of Crash : " + time +
Expand All @@ -105,15 +112,14 @@ public void uncaughtException(@NonNull final Thread t, @NonNull final Throwable
sb.append(head).append(UtilsBridge.getFullStackTrace(e));
final String crashInfo = sb.toString();
final String crashFile = dirPath + time + ".txt";
UtilsBridge.writeFileFromString(crashFile, crashInfo);
UtilsBridge.writeFileFromString(crashFile, crashInfo, true);

if (onCrashListener != null) {
onCrashListener.onCrash(crashInfo, e);
}

UncaughtExceptionHandler handler = Thread.getDefaultUncaughtExceptionHandler();
if (handler != null) {
handler.uncaughtException(t, e);
if (DEFAULT_UNCAUGHT_EXCEPTION_HANDLER != null) {
DEFAULT_UNCAUGHT_EXCEPTION_HANDLER.uncaughtException(t, e);
}
}
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -593,7 +593,7 @@ private static void printDeviceInfo(final String filePath, final String date) {

private static void input2File(final String filePath, final String input) {
if (CONFIG.mFileWriter == null) {
UtilsBridge.writeFileFromString(filePath, input);
UtilsBridge.writeFileFromString(filePath, input, true);
} else {
CONFIG.mFileWriter.write(filePath, input);
}
Expand Down Expand Up @@ -621,13 +621,12 @@ public static final class Config {
private IFileWriter mFileWriter;

private Config() {
mDefaultDir = Utils.getApp().getFilesDir() + FILE_SEP + "log" + FILE_SEP;
mFileWriter = new IFileWriter() {
@Override
public void write(String file, String content) {

}
};
if (UtilsBridge.isSDCardEnableByEnvironment()
&& Utils.getApp().getExternalFilesDir(null) != null)
mDefaultDir = Utils.getApp().getExternalFilesDir(null) + FILE_SEP + "log" + FILE_SEP;
else {
mDefaultDir = Utils.getApp().getFilesDir() + FILE_SEP + "log" + FILE_SEP;
}
}

public final Config setLogSwitch(final boolean logSwitch) {
Expand Down Expand Up @@ -863,7 +862,8 @@ static String object2String(Object object) {

static String object2String(Object object, int type) {
if (object.getClass().isArray()) return array2String(object);
if (object instanceof Throwable) return UtilsBridge.getFullStackTrace((Throwable) object);
if (object instanceof Throwable)
return UtilsBridge.getFullStackTrace((Throwable) object);
if (object instanceof Bundle) return bundle2String((Bundle) object);
if (object instanceof Intent) return intent2String((Intent) object);
if (type == JSON) {
Expand Down
Loading

0 comments on commit 4605277

Please sign in to comment.