首页 > 编程知识 正文

androidsdk混淆,apk反编译修改源代码

时间:2023-05-04 03:32:20 阅读:111661 作者:3207

我以前写过一个关于包混淆的帖子《android项目混淆打包注意事项》。 它介绍了对第三方jar包进行模糊处理,几乎可以解决模糊处理问题。 我还不知道,你去看看。 地址在这里。 是http://my.eoe.cn/smile _ it/archive/3820.html。

现在的APP或多或少都引用开源项目作为外部库。 如果你对大多数开源项目还不太了解,请去我的博客看看。 《开源Club》:http://my.eoe.cn/smile _ it/archive/17918

因此,本文主要介绍了在APP应用程序中将外部第三方库作为liarary引用时的混淆方法。 另外,因为最近的项目引用了五个开源库,并且在联机之前专门实践了混淆方法。

闲话休提,言归正传:

1 .在project.properties文件中,必须指定模糊化规则并指定默认第三方库的路径。

1

2

3

proguard.config=proguard.CFG target=Android-14 Android.library.reference.1=. 引入的外部library的工程名称

2、如果你对引入的第三方数据库不太了解,或者官方没有就该混淆给出具体实例,建议直接屏蔽,以免混淆。

在proguard.cfg文件中主要做的是

1

2

3

4

5

-libraryjars .第三方库的工程名称--------引入的第三方库-----dontwarn包名称. **-----找到包名称**关于此包中的类的引用- keepclassassar------ -不要混淆此包中的所有类和所有方法

示例:

我的项目里还有其他的jar包,所以我发布了我的

1、project.properties

2、proguard.cfg :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

-优化过程5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-dontskipnonpubliclibraryclassmembers-- 字段/*, class/merging/*-keep公共类* extends Android.app.activity-keep公共类* extends Android.app.application extends Android.app.service-keep公共类* extends Android.content.broadcast receiiies extends Android.content.content provider-keep公共类* extends Android.app.backup.backupagenthelper-keeppublicclic extends Android.preference.preference-keeppubliclascoscod 服务# umeng _ service }-keepclasseswithmembersclass * { public (Android.content.context,Android.util.atriburibute ) }-keepclasseswithmembersclass * { public (Android.content.context,android.util.AttributeSet,int ); }-keepclassmembersclass * extends Android.app.activity { public void * (Android.view.view ); }-keepclassmembersenum * {公共静态* * [ ] values (; 公共静态* * value of (Java.lang.string ); }-keepclass * implements Android.OS.parcelable { publicstaticfinalandroid.OS.parcelable $ creator *; }-dontwarncom.umeng.*-dontwarnorg.Apache.com mons.*-dontwarncom.Tencent.Weibo.SDK.*-keepattribus } }-keepclasscom.Tencent.open.t诊断$ *-keepclasscom.Tencent.t诊断$ * { *; }-keepclasscom.Tencent.open.pkdialog-keepclasscom.Tencent.open.pkdialog { *; }-keepclasscom.Tencent.open.pkdialog $ *-keepclasscom.Tencent.open.pkdialog $ * { *; }-keepclasscom.Tencent.mm.SDK.open API.wxmediamessage { *; }-keepclasscom.Tencent.mm.SDK.open API.* * implements com.Tencent.mm.SDK.open API.wxmediamessage $ imediaobbe }

注意:如果还有其他类库,您可以继续在此处按上述格式添加。 默认情况下,它不会混淆。

如果有什么不明白的地方,请给我留言哦。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。