- 在线时间
- 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文件 的错误 k) M, x: y0 B* }$ r9 Q' I
问题概述:& v9 N0 a m" @' n
, i7 J; i3 V1 E$ ?在新建Android程序的时候出现以下错误:5 A* K2 ? D: D; G
2 `/ ?4 i4 u8 v0 w找不到 \android-sdk-windows\tools\lib\proguard.cfg文件
0 L8 H$ y9 @) Y7 V/ V$ `( N1 Y8 N- f0 Q4 i" W) C
( d ~% [# _- Z) k0 m
3 @" R8 M5 [' ^* j4 g* b( A% M" P原因:
7 Y" \* M7 ^: {" c
) [! z, g9 Z& hSDK不完整。
. P( @& K$ |9 S, D5 p4 U9 p: |- z; d+ _; Y5 ]7 h( A* X2 q; U
! \) Q: \) V% u* a1 Y' i t1 v9 Y" N, f' I" w6 i0 m+ l% _
解决方法:
2 U' R1 w$ z m4 m' h& ]( s5 g# L6 s6 V! ]
方法一3 u5 G. [2 e8 A) x
0 C* K' D4 U0 i @可在 \android-sdk-windows\tools\lib\目录下新建一个proguard.cfg文件 G! B) G) `( a7 p5 u$ {" v3 {) N
6 ^, [$ n P. m# R+ l
然后添下以下内容:& l3 i$ L5 G) N
! X( h+ d7 U& D" w. F- W% K" @ ]: n& H$ {
proguard.cfg
& h' l. v: P7 f- k( Q! g-optimizationpasses 58 r5 x0 A, _( g; D
-dontusemixedcaseclassnames
2 \/ f! E4 W! m3 }, d-dontskipnonpubliclibraryclasses
% u9 O$ @9 c- x-dontpreverify- B7 J1 _: T4 |6 m2 }+ k* g
-verbose, e4 B K5 u8 A' K$ a' g4 V
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
( u% D. p$ z. A1 N @8 F7 q% {* @. ~# ^( X
-keep public class * extends android.app.Activity
8 ]9 n5 {, _2 k+ J-keep public class * extends android.app.Application
7 S! L: R/ A: u" \& a) F" B-keep public class * extends android.app.Service
8 G4 y+ p* n" O( q-keep public class * extends android.content.BroadcastReceiver3 `0 z0 f0 g$ | |) o1 Y2 W
-keep public class * extends android.content.ContentProvider) {5 B H: @' d A/ b T, ^
-keep public class com.android.vending.licensing.ILicensingService3 J: f w2 g- N
1 b" I# u" A0 b& S, H4 n# b& [8 `-keepclasseswithmembernames class * {
% `4 Z" v& S v4 }- Y# B+ n native <methods>;
& ^# i n: v2 [: ~}7 j. z! M6 c3 S" e
+ D# m; K! ~- p9 `$ T
-keepclasseswithmembernames class * {
7 e" P; m+ Z$ ]8 K2 Y public <init>(android.content.Context, android.util.AttributeSet);
8 T7 W' W5 U' T% u}
$ M3 o( v0 Z" t6 m6 |% T- P X) b8 h
-keepclasseswithmembernames class * {% \# Y. l# [2 c7 S
public <init>(android.content.Context, android.util.AttributeSet, int);
, D0 K5 M( F+ F0 b}
& v2 r5 U+ |: E) }! ~% V- N
( J; Y* d5 c: a-keepclassmembers enum * {. c7 [& v0 \" p
public static **[] values();
9 Q& H8 s" u. f5 Z/ H$ z3 a) s public static ** valueOf(java.lang.String);
2 g. M- O! H1 u}3 ~, G2 y- X' l+ S) y& y
7 O6 D$ q' }2 e$ f8 o3 k9 z
-keep class * implements android.os.Parcelable {" j* A0 n4 @& R- ^9 q9 i! k
public static final android.os.Parcelable$Creator *;
$ a* e, b5 W6 |7 H; |( a}8 @% s7 G( P) D. E
. L% r+ }* w' Y1 [; b! B
3 z6 ~; C8 a ~
0 u% y2 r9 \+ X6 ]方法二
5 ?; j; t" b' U* U5 [6 |通过Android SDK and AVD Manager更新所有SDK。 |
|