- 在线时间
- 490 小时
- 最后登录
- 2024-2-3
- 注册时间
- 2013-2-28
- 听众数
- 117
- 收听数
- 46
- 能力
- 268 分
- 体力
- 39235 点
- 威望
- 1340 点
- 阅读权限
- 255
- 积分
- 31237
- 相册
- 2
- 日志
- 0
- 记录
- 0
- 帖子
- 1388
- 主题
- 937
- 精华
- 0
- 分享
- 0
- 好友
- 111
升级   0% TA的每日心情 | 衰 2020-10-25 11:55 |
---|
签到天数: 264 天 [LV.8]以坛为家I - 自我介绍
- 内蒙古大学计算机学院
群组: 2013年数学建模国赛备 |
如何解决:新建Android程序的时候发生了找不到 \android-sdk-windows\tools\lib\proguard.cfg文件 的错误
( o5 n) \4 Y( J" ^! T问题概述:
) q/ u1 X9 M5 q5 e" N% T* O& u# A- [$ V! |
在新建Android程序的时候出现以下错误:1 E% q% R6 D7 p \7 y. ^. |
3 _( Y4 T5 q j& s `! Q找不到 \android-sdk-windows\tools\lib\proguard.cfg文件
# z" I! T$ t) E3 p @
6 b' {# M/ M5 @# b1 m) g
3 I1 k/ u9 G. H( G; f8 e
) h; ^ b; b2 c" t原因:, K# C+ ]: S/ a2 c0 o! x2 M4 x
, L5 b" q6 ^2 m/ d9 Z
SDK不完整。2 r$ D% B. Q: r5 J4 a* K
9 \) C7 [' [% X0 _7 @
3 O5 K! _ \& U" p, b+ n9 J1 d; r3 H
% s M6 e+ @1 |- ]) [) h* K解决方法:
9 x# w0 y& K% R8 s3 H) y; T% @" G7 |! e- C; {
方法一
, c5 [- p7 q/ J% i; v
% E/ {7 m- q1 O7 J可在 \android-sdk-windows\tools\lib\目录下新建一个proguard.cfg文件5 I$ j2 j$ p$ u& p C S" i5 J
; a7 h. S* \, Y然后添下以下内容:
4 p$ q6 [6 H2 P, ]3 x( w
/ {4 a' F& B% p" [% Q+ m
9 |2 M# Y+ o3 Z4 q; M; a" Tproguard.cfg$ D) t* M0 |: X" }
-optimizationpasses 5. e {5 b) \* Q/ s3 `, Q' o
-dontusemixedcaseclassnames4 F) B( H2 j7 ]( {
-dontskipnonpubliclibraryclasses
: u8 y8 e8 c7 S* O-dontpreverify/ z: Q9 M: f/ P8 A' {. J- h! q
-verbose0 ?4 @" z" U( z, ~' o& n
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
. J. H. O7 ]# }' W, W
! J/ ~$ n a1 J) t8 Z I-keep public class * extends android.app.Activity; J- z, ]! d* @4 C- B d
-keep public class * extends android.app.Application
# \- T8 l$ L' H0 L9 b. W4 _-keep public class * extends android.app.Service3 A5 B6 N7 X" I1 n
-keep public class * extends android.content.BroadcastReceiver( @) V2 G0 o7 I
-keep public class * extends android.content.ContentProvider
+ T8 t, f2 C3 q# J-keep public class com.android.vending.licensing.ILicensingService/ n) I, y' j, f# ]! b
. a) Z( l+ b2 L' t w4 f P* W9 ~-keepclasseswithmembernames class * {
! L* z9 @2 a; B R; i native <methods>;9 C7 I9 X4 f0 P. S* C% }' P
}! j/ v2 s/ ]! S/ b, q
0 l w1 R. N t7 @, v-keepclasseswithmembernames class * {- X2 j! D& P: f! u5 s
public <init>(android.content.Context, android.util.AttributeSet);
: c% X; q& W. S$ l. i4 t}% S; v9 \. M/ J1 a, }
; L) @. q5 k+ ~: w-keepclasseswithmembernames class * {
1 i. o( {! V5 _: _0 ] y public <init>(android.content.Context, android.util.AttributeSet, int);8 Y# _+ l- o. P+ k! a/ R% ]* h
}
e3 |5 Y1 n7 U% A. t' c# p
' }9 ]: G6 D7 y-keepclassmembers enum * {% \! K C% n# ~- v1 w2 b; Q' h
public static **[] values();* r8 R' n" `) k
public static ** valueOf(java.lang.String);
, i8 [. l% ?! c9 O. w# }+ b}
) G4 |0 \. L4 @8 A# {9 T7 @8 \$ C0 y' O/ l' D$ a; L
-keep class * implements android.os.Parcelable {
^' R: x! c4 ] public static final android.os.Parcelable$Creator *;
/ P( t9 z' Y5 Y4 u I}$ }) K( Q! {/ @! k5 b S3 v
% }- e+ I& p. y% ?* c' B, X/ |
- {5 g7 m$ m1 X9 g5 F- Y1 x4 T0 |
7 I Y& M5 j0 ^/ M( J7 u1 h- N
方法二" O4 h! K5 G2 m2 A- ?2 j
通过Android SDK and AVD Manager更新所有SDK。 |
|