Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Quincy379
jadx
提交
7d07fb0b
J
jadx
项目概览
Quincy379
/
jadx
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jadx
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7d07fb0b
编写于
8月 01, 2019
作者:
S
Skylot
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore: fix issues reported by lgtm.com
上级
99935bad
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
22 addition
and
14 deletion
+22
-14
README.md
README.md
+1
-0
jadx-core/src/main/java/jadx/core/clsp/NMethod.java
jadx-core/src/main/java/jadx/core/clsp/NMethod.java
+3
-1
jadx-core/src/main/java/jadx/core/codegen/json/JsonCodeGen.java
...ore/src/main/java/jadx/core/codegen/json/JsonCodeGen.java
+1
-1
jadx-core/src/main/java/jadx/core/utils/Utils.java
jadx-core/src/main/java/jadx/core/utils/Utils.java
+4
-1
jadx-core/src/main/java/jadx/core/utils/android/Res9patchStreamDecoder.java
.../java/jadx/core/utils/android/Res9patchStreamDecoder.java
+2
-2
jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java
...re/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java
+6
-5
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
+5
-4
未找到文件。
README.md
浏览文件 @
7d07fb0b
...
...
@@ -2,6 +2,7 @@
[
![Build Status
](
https://travis-ci.org/skylot/jadx.png?branch=master
)
](https://travis-ci.org/skylot/jadx)
[
![Code Coverage
](
https://codecov.io/gh/skylot/jadx/branch/master/graph/badge.svg
)
](https://codecov.io/gh/skylot/jadx)
[
![Alerts from lgtm.com
](
https://img.shields.io/lgtm/alerts/g/skylot/jadx.svg?logo=lgtm&logoWidth=18
)
](https://lgtm.com/projects/g/skylot/jadx/alerts/)
[
![SonarQube Bugs
](
https://sonarcloud.io/api/project_badges/measure?project=jadx&metric=bugs
)
](https://sonarcloud.io/dashboard?id=jadx)
[
![License
](
http://img.shields.io/:license-apache-blue.svg
)
](http://www.apache.org/licenses/LICENSE-2.0.html)
[
![semantic-release
](
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
)
](https://github.com/semantic-release/semantic-release)
...
...
jadx-core/src/main/java/jadx/core/clsp/NMethod.java
浏览文件 @
7d07fb0b
package
jadx.core.clsp
;
import
java.util.Arrays
;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.annotations.Nullable
;
...
...
@@ -82,7 +84,7 @@ public class NMethod implements Comparable<NMethod> {
@Override
public
String
toString
()
{
return
"NMethod{'"
+
shortId
+
'\''
+
", argTypes="
+
genericArgs
+
", argTypes="
+
Arrays
.
toString
(
genericArgs
)
+
", retType="
+
retType
+
", varArgs="
+
varArgs
+
'}'
;
...
...
jadx-core/src/main/java/jadx/core/codegen/json/JsonCodeGen.java
浏览文件 @
7d07fb0b
...
...
@@ -193,7 +193,7 @@ public class JsonCodeGen {
jsonCodeLine
.
setSourceLine
(
lineMapping
.
get
(
line
));
Object
obj
=
annotations
.
get
(
new
CodePosition
(
line
,
0
));
if
(
obj
instanceof
InsnNode
)
{
int
offset
=
((
InsnNode
)
obj
).
getOffset
();
long
offset
=
((
InsnNode
)
obj
).
getOffset
();
jsonCodeLine
.
setOffset
(
"0x"
+
Long
.
toHexString
(
mthCodeOffset
+
offset
*
2
));
}
codeLines
.
add
(
jsonCodeLine
);
...
...
jadx-core/src/main/java/jadx/core/utils/Utils.java
浏览文件 @
7d07fb0b
...
...
@@ -180,8 +180,11 @@ public class Utils {
if
(
len
==
0
)
{
return
Collections
.
emptyMap
();
}
if
(
len
%
2
!=
0
)
{
throw
new
IllegalArgumentException
(
"Incorrect arguments count: "
+
len
);
}
Map
<
String
,
String
>
result
=
new
HashMap
<>(
len
/
2
);
for
(
int
i
=
0
;
i
<
len
;
i
+=
2
)
{
for
(
int
i
=
0
;
i
<
len
-
1
;
i
+=
2
)
{
result
.
put
(
parameters
[
i
],
parameters
[
i
+
1
]);
}
return
Collections
.
unmodifiableMap
(
result
);
...
...
jadx-core/src/main/java/jadx/core/utils/android/Res9patchStreamDecoder.java
浏览文件 @
7d07fb0b
...
...
@@ -50,12 +50,12 @@ public class Res9patchStreamDecoder {
drawVLine
(
im2
,
w
+
1
,
np
.
padTop
+
1
,
h
-
np
.
padBottom
);
int
[]
xDivs
=
np
.
xDivs
;
for
(
int
i
=
0
;
i
<
xDivs
.
length
;
i
+=
2
)
{
for
(
int
i
=
0
;
i
<
xDivs
.
length
-
1
;
i
+=
2
)
{
drawHLine
(
im2
,
0
,
xDivs
[
i
]
+
1
,
xDivs
[
i
+
1
]);
}
int
[]
yDivs
=
np
.
yDivs
;
for
(
int
i
=
0
;
i
<
yDivs
.
length
;
i
+=
2
)
{
for
(
int
i
=
0
;
i
<
yDivs
.
length
-
1
;
i
+=
2
)
{
drawVLine
(
im2
,
0
,
yDivs
[
i
]
+
1
,
yDivs
[
i
+
1
]);
}
...
...
jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java
浏览文件 @
7d07fb0b
...
...
@@ -40,11 +40,12 @@ public class ValuesParser extends ParserConstants {
}
private
static
void
decodeAndroid
(
RootNode
root
)
throws
IOException
{
InputStream
inputStream
=
new
BufferedInputStream
(
ValuesParser
.
class
.
getResourceAsStream
(
"/resources.arsc"
));
ResTableParser
androidParser
=
new
ResTableParser
(
root
);
androidParser
.
decode
(
inputStream
);
androidStrings
=
androidParser
.
getStrings
();
androidResMap
=
androidParser
.
getResStorage
().
getResourcesNames
();
try
(
InputStream
inputStream
=
new
BufferedInputStream
(
ValuesParser
.
class
.
getResourceAsStream
(
"/resources.arsc"
)))
{
ResTableParser
androidParser
=
new
ResTableParser
(
root
);
androidParser
.
decode
(
inputStream
);
androidStrings
=
androidParser
.
getStrings
();
androidResMap
=
androidParser
.
getResStorage
().
getResourcesNames
();
}
}
@Nullable
...
...
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
浏览文件 @
7d07fb0b
...
...
@@ -13,6 +13,7 @@ import java.awt.event.WindowAdapter;
import
java.awt.event.WindowEvent
;
import
java.io.File
;
import
java.io.FileInputStream
;
import
java.io.InputStream
;
import
java.nio.file.Files
;
import
java.nio.file.Path
;
import
java.nio.file.Paths
;
...
...
@@ -924,12 +925,12 @@ public class MainWindow extends JFrame {
}
private
void
setEditorTheme
(
String
editorThemePath
)
{
try
{
editorTheme
=
Theme
.
load
(
getClass
().
getResourceAsStream
(
editorThemePath
)
);
try
(
InputStream
is
=
getClass
().
getResourceAsStream
(
editorThemePath
))
{
editorTheme
=
Theme
.
load
(
is
);
}
catch
(
Exception
e
)
{
LOG
.
error
(
"Can't load editor theme from classpath: {}"
,
editorThemePath
);
try
{
editorTheme
=
Theme
.
load
(
new
FileInputStream
(
editorThemePath
)
);
try
(
InputStream
is
=
new
FileInputStream
(
editorThemePath
))
{
editorTheme
=
Theme
.
load
(
is
);
}
catch
(
Exception
ex
)
{
LOG
.
error
(
"Can't load editor theme from file: {}"
,
editorThemePath
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录