Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Quincy379
jadx
提交
d39849ad
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,体验更适合开发者的 AI 搜索 >>
提交
d39849ad
编写于
11月 21, 2020
作者:
S
Skylot
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(res): update android resources to API 30
上级
d65ee902
变更
5
展开全部
隐藏空白更改
内联
并排
Showing
5 changed file
with
12417 addition
and
35 deletion
+12417
-35
jadx-core/build.gradle
jadx-core/build.gradle
+0
-1
jadx-core/clsp-data/android-29-res.jar
jadx-core/clsp-data/android-29-res.jar
+0
-0
jadx-core/src/main/java/jadx/core/xmlgen/BinaryXMLParser.java
...-core/src/main/java/jadx/core/xmlgen/BinaryXMLParser.java
+14
-34
jadx-core/src/main/resources/android/attrs.xml
jadx-core/src/main/resources/android/attrs.xml
+9236
-0
jadx-core/src/main/resources/android/attrs_manifest.xml
jadx-core/src/main/resources/android/attrs_manifest.xml
+3167
-0
未找到文件。
jadx-core/build.gradle
浏览文件 @
d39849ad
...
...
@@ -4,7 +4,6 @@ plugins {
dependencies
{
runtimeOnly
files
(
'clsp-data/android-29-clst.jar'
)
runtimeOnly
files
(
'clsp-data/android-29-res.jar'
)
api
(
project
(
':jadx-plugins:jadx-plugins-api'
))
...
...
jadx-core/clsp-data/android-29-res.jar
已删除
100644 → 0
浏览文件 @
d65ee902
文件已删除
jadx-core/src/main/java/jadx/core/xmlgen/BinaryXMLParser.java
浏览文件 @
d39849ad
...
...
@@ -2,7 +2,6 @@ package jadx.core.xmlgen;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.lang.reflect.Field
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.Map
;
...
...
@@ -35,12 +34,10 @@ import jadx.core.xmlgen.entry.ValuesParser;
*/
public
class
BinaryXMLParser
extends
CommonBinaryParser
{
private
static
final
Logger
LOG
=
LoggerFactory
.
getLogger
(
BinaryXMLParser
.
class
);
private
static
final
String
ANDROID_R_STYLE_CLS
=
"android.R$style"
;
private
static
final
boolean
ATTR_NEW_LINE
=
false
;
private
final
Map
<
Integer
,
String
>
styleMap
=
new
HashMap
<>();
private
final
Map
<
Integer
,
String
>
resNames
;
private
Map
<
String
,
String
>
nsMap
;
private
Set
<
String
>
nsMapGenerated
;
...
...
@@ -62,7 +59,6 @@ public class BinaryXMLParser extends CommonBinaryParser {
public
BinaryXMLParser
(
RootNode
rootNode
)
{
this
.
rootNode
=
rootNode
;
try
{
readAndroidRStyleClass
();
ConstStorage
constStorage
=
rootNode
.
getConstValues
();
resNames
=
constStorage
.
getResourcesNames
();
}
catch
(
Exception
e
)
{
...
...
@@ -70,17 +66,6 @@ public class BinaryXMLParser extends CommonBinaryParser {
}
}
private
void
readAndroidRStyleClass
()
{
try
{
Class
<?>
rStyleCls
=
Class
.
forName
(
ANDROID_R_STYLE_CLS
);
for
(
Field
f
:
rStyleCls
.
getFields
())
{
styleMap
.
put
(
f
.
getInt
(
f
.
getType
()),
f
.
getName
());
}
}
catch
(
Exception
e
)
{
LOG
.
error
(
"Android R class loading failed"
,
e
);
}
}
public
synchronized
ICodeInfo
parse
(
InputStream
inputStream
)
throws
IOException
{
is
=
new
ParserStream
(
inputStream
);
if
(!
isBinaryXml
())
{
...
...
@@ -370,26 +355,21 @@ public class BinaryXMLParser extends CommonBinaryParser {
String
shortNsName
,
String
attrName
)
{
if
(
attrValDataType
==
TYPE_REFERENCE
)
{
// reference custom processing
String
name
=
styleMap
.
get
(
attrValData
);
if
(
name
!=
null
)
{
writer
.
add
(
"@style/"
).
add
(
name
.
replace
(
'_'
,
'.'
));
String
resName
=
resNames
.
get
(
attrValData
);
if
(
resName
!=
null
)
{
writer
.
add
(
'@'
);
if
(
resName
.
startsWith
(
"id/"
))
{
writer
.
add
(
'+'
);
}
writer
.
add
(
resName
);
}
else
{
String
resName
=
resNames
.
get
(
attrValData
);
if
(
resName
!=
null
)
{
writer
.
add
(
'@'
);
if
(
resName
.
startsWith
(
"id/"
))
{
writer
.
add
(
'+'
);
}
writer
.
add
(
resName
);
String
androidResName
=
ValuesParser
.
getAndroidResMap
().
get
(
attrValData
);
if
(
androidResName
!=
null
)
{
writer
.
add
(
"@android:"
).
add
(
androidResName
);
}
else
if
(
attrValData
==
0
)
{
writer
.
add
(
"@null"
);
}
else
{
resName
=
ValuesParser
.
getAndroidResMap
().
get
(
attrValData
);
if
(
resName
!=
null
)
{
writer
.
add
(
"@android:"
).
add
(
resName
);
}
else
if
(
attrValData
==
0
)
{
writer
.
add
(
"@null"
);
}
else
{
writer
.
add
(
"0x"
).
add
(
Integer
.
toHexString
(
attrValData
));
}
writer
.
add
(
"0x"
).
add
(
Integer
.
toHexString
(
attrValData
));
}
}
}
else
{
...
...
jadx-core/src/main/resources/android/attrs.xml
0 → 100644
浏览文件 @
d39849ad
此差异已折叠。
点击以展开。
jadx-core/src/main/resources/android/attrs_manifest.xml
0 → 100644
浏览文件 @
d39849ad
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录