Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
爽朗的琪琪
jadx
提交
78ed5201
J
jadx
项目概览
爽朗的琪琪
/
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 搜索 >>
提交
78ed5201
编写于
10月 25, 2020
作者:
S
sergey-wowwow
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Changes ResourceFile
上级
0524d1f0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
14 addition
and
21 deletion
+14
-21
jadx-core/src/main/java/jadx/api/ResourceFile.java
jadx-core/src/main/java/jadx/api/ResourceFile.java
+10
-17
jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java
jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java
+4
-4
未找到文件。
jadx-core/src/main/java/jadx/api/ResourceFile.java
浏览文件 @
78ed5201
...
@@ -35,7 +35,7 @@ public class ResourceFile {
...
@@ -35,7 +35,7 @@ public class ResourceFile {
private
final
String
name
;
private
final
String
name
;
private
final
ResourceType
type
;
private
final
ResourceType
type
;
private
ZipRef
zipRef
;
private
ZipRef
zipRef
;
private
ResourceEntry
alias
;
private
String
deobfName
;
public
static
ResourceFile
createResourceFile
(
JadxDecompiler
decompiler
,
String
name
,
ResourceType
type
)
{
public
static
ResourceFile
createResourceFile
(
JadxDecompiler
decompiler
,
String
name
,
ResourceType
type
)
{
if
(!
ZipSecurity
.
isValidZipEntryName
(
name
))
{
if
(!
ZipSecurity
.
isValidZipEntryName
(
name
))
{
...
@@ -53,26 +53,14 @@ public class ResourceFile {
...
@@ -53,26 +53,14 @@ public class ResourceFile {
public
String
getOriginalName
()
{
public
String
getOriginalName
()
{
return
name
;
return
name
;
}
}
public
String
getDeobfName
()
{
public
String
getDeobfName
()
{
if
(
alias
==
null
)
{
return
deobfName
!=
null
?
deobfName
:
name
;
return
getOriginalName
();
}
int
index
=
name
.
lastIndexOf
(
'.'
);
return
String
.
format
(
"%s%s/%s%s"
,
alias
.
getTypeName
(),
alias
.
getConfig
(),
alias
.
getKeyName
(),
index
==
-
1
?
""
:
name
.
substring
(
index
));
}
}
public
ResourceType
getType
()
{
public
ResourceType
getType
()
{
return
type
;
return
type
;
}
}
public
ResourceEntry
getAlias
()
{
return
alias
;
}
public
ResContainer
loadContent
()
{
public
ResContainer
loadContent
()
{
return
ResourcesLoader
.
loadContent
(
decompiler
,
this
);
return
ResourcesLoader
.
loadContent
(
decompiler
,
this
);
...
@@ -81,9 +69,14 @@ public class ResourceFile {
...
@@ -81,9 +69,14 @@ public class ResourceFile {
void
setZipRef
(
ZipRef
zipRef
)
{
void
setZipRef
(
ZipRef
zipRef
)
{
this
.
zipRef
=
zipRef
;
this
.
zipRef
=
zipRef
;
}
}
public
void
setAlias
(
ResourceEntry
ri
)
{
public
void
setAlias
(
ResourceEntry
ri
)
{
this
.
alias
=
ri
;
int
index
=
name
.
lastIndexOf
(
'.'
);
deobfName
=
String
.
format
(
"%s%s/%s%s"
,
ri
.
getTypeName
(),
ri
.
getConfig
(),
ri
.
getKeyName
(),
index
==
-
1
?
""
:
name
.
substring
(
index
));
}
}
public
ZipRef
getZipRef
()
{
public
ZipRef
getZipRef
()
{
...
...
jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java
浏览文件 @
78ed5201
...
@@ -165,14 +165,14 @@ public class RootNode {
...
@@ -165,14 +165,14 @@ public class RootNode {
throw
new
JadxRuntimeException
(
"Error loading jadx class set"
,
e
);
throw
new
JadxRuntimeException
(
"Error loading jadx class set"
,
e
);
}
}
}
}
private
void
updateObfuscatedFiles
(
ResTableParser
parser
,
List
<
ResourceFile
>
resources
)
{
private
void
updateObfuscatedFiles
(
ResTableParser
parser
,
List
<
ResourceFile
>
resources
)
{
ResourceStorage
resStorage
=
parser
.
getResStorage
();
ResourceStorage
resStorage
=
parser
.
getResStorage
();
ValuesParser
valuesParser
=
new
ValuesParser
(
this
,
parser
.
getStrings
(),
resStorage
.
getResourcesNames
());
ValuesParser
valuesParser
=
new
ValuesParser
(
this
,
parser
.
getStrings
(),
resStorage
.
getResourcesNames
());
for
(
int
i
=
0
;
i
<
resources
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
resources
.
size
();
i
++)
{
ResourceFile
resource
=
resources
.
get
(
i
);
ResourceFile
resource
=
resources
.
get
(
i
);
for
(
ResourceEntry
ri
:
parser
.
getResStorage
().
getResources
())
{
for
(
ResourceEntry
ri
:
parser
.
getResStorage
().
getResources
())
{
if
(
resource
.
getOriginalName
().
equals
(
valuesParser
.
getValueString
(
ri
)))
{
if
(
resource
.
getOriginalName
().
equals
(
valuesParser
.
getValueString
(
ri
)))
{
resource
.
setAlias
(
ri
);
resource
.
setAlias
(
ri
);
break
;
break
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录