Skip to content

Commit 8814bfb

Browse files
committed
Add try catch in MainActivity onNewIntent()
Solve NullPointException in setProxy()
1 parent ef3d24f commit 8814bfb

4 files changed

Lines changed: 13 additions & 14 deletions

File tree

README.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,14 @@ schema的协议格式为:jdhttpmonitor://webview?param={'url'='http://www.baid
5050
AndroidHttpCapture基于Netty、browsermob-proxy来实现核心抓包的功能<br>
5151
Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.<br>
5252
https://github.com/netty/netty<br>
53-
由于Aandroid5.0+不支持Provider 为JKS的证书,所以逆向修改了Netty库的证书部分适配Android系统(netty_android.jar)<br><br>
53+
由于Android5.0+不支持Provider 为JKS的证书,所以逆向修改了Netty库的证书部分适配Android系统(netty_android.jar)<br><br>
5454

5555
A free utility to help web developers watch and manipulate network traffic from their AJAX applications.<br>
5656
https://github.com/lightbody/browsermob-proxy<br>
5757
修改了多处browsermob-proxy的源码适配Android系统<br>
5858
####目前遗留了一个Bug:信任所有的服务器证书不做校验<br><br>
5959

60-
四.License<br>
61-
MIT License
62-
60+
MIT License<br>
6361
Copyright (c) 2016 AndroidHttpCapture
6462

6563
Permission is hereby granted, free of charge, to any person obtaining a copy

app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ android {
2525
applicationId "cn.darkal.networkdiagnosis"
2626
minSdkVersion 14
2727
targetSdkVersion 22
28-
versionCode 17
29-
versionName "2.4.17"
28+
versionCode 18
29+
versionName "2.4.18"
3030
// Enabling multidex support.
3131
multiDexEnabled true
3232
resConfigs "zh"

app/src/main/java/cn/darkal/networkdiagnosis/Activity/MainActivity.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import android.content.Context;
1010
import android.content.DialogInterface;
1111
import android.content.Intent;
12-
import android.content.SharedPreferences;
1312
import android.net.Uri;
1413
import android.os.Build;
1514
import android.os.Bundle;
@@ -58,7 +57,6 @@
5857
import org.json.JSONObject;
5958

6059
import java.io.File;
61-
import java.io.IOException;
6260
import java.io.InputStream;
6361
import java.text.SimpleDateFormat;
6462
import java.util.ArrayList;
@@ -76,7 +74,6 @@
7674
import cn.darkal.networkdiagnosis.Fragment.BackHandledInterface;
7775
import cn.darkal.networkdiagnosis.Fragment.NetworkFragment;
7876
import cn.darkal.networkdiagnosis.Fragment.PreviewFragment;
79-
import cn.darkal.networkdiagnosis.Fragment.PreviewFragment_ViewBinder;
8077
import cn.darkal.networkdiagnosis.Fragment.WebViewFragment;
8178
import cn.darkal.networkdiagnosis.R;
8279
import cn.darkal.networkdiagnosis.SysApplication;
@@ -548,10 +545,14 @@ public void onGlobalLayout() {
548545
@Override
549546
protected void onNewIntent(Intent intent) {
550547
super.onNewIntent(intent);
551-
setIntent(intent);
552-
handleUriStartupParams();
553-
if (intent.getAction().equals("android.intent.action.SEARCH")) {
554-
switchContent(PreviewFragment.getInstance());
548+
try {
549+
setIntent(intent);
550+
handleUriStartupParams();
551+
if (intent.getAction().equals("android.intent.action.SEARCH")) {
552+
switchContent(PreviewFragment.getInstance());
553+
}
554+
}catch (Exception e){
555+
e.printStackTrace();
555556
}
556557
}
557558

app/src/main/java/cn/darkal/networkdiagnosis/Utils/ProxyUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public static boolean setProxy(WebView webview, String host, int port) {
3535
} else if (sdkInt < Build.VERSION_CODES.LOLLIPOP) {
3636
return setProxyKK(webview, host, port, "android.app.Application");
3737
} else {
38-
return setProxyLollipop(webview.getContext(), host, port);
38+
return webview.getContext() != null && setProxyLollipop(webview.getContext(), host, port);
3939
}
4040
}
4141

0 commit comments

Comments
 (0)