- 在线时间
- 491 小时
- 最后登录
- 2026-9-17
- 注册时间
- 2013-2-28
- 听众数
- 118
- 收听数
- 46
- 能力
- 268 分
- 体力
- 39229 点
- 威望
- 1340 点
- 阅读权限
- 255
- 积分
- 31234
- 相册
- 2
- 日志
- 0
- 记录
- 0
- 帖子
- 1389
- 主题
- 937
- 精华
- 0
- 分享
- 0
- 好友
- 111
升级   0% TA的每日心情 | 开心 2026-9-17 16:51 |
|---|
签到天数: 265 天 [LV.8]以坛为家I - 自我介绍
- 内蒙古大学计算机学院
群组: 2013年数学建模国赛备 |
如何解决:新建Android程序的时候发生了找不到 \android-sdk-windows\tools\lib\proguard.cfg文件 的错误
4 |6 G/ o3 e% u6 L, P问题概述:
, A9 u* m0 K3 C1 u$ v2 w
& o4 N& f6 W/ ~; B) |* ?3 k在新建Android程序的时候出现以下错误:
4 ~7 h$ n5 b# X0 {6 l# h* A) q) I
1 `) p" b$ a6 I- a9 x& f9 F( c( w找不到 \android-sdk-windows\tools\lib\proguard.cfg文件0 T7 o' A1 c8 s& g9 E9 t1 b& k3 w
$ r! @3 R9 s: {$ H
4 M' }& I9 \% Y7 Y. w9 A
, o8 v! a9 x4 \3 n( `/ c原因:, ?3 C1 K6 p3 i! P9 e
- N; d! h! V3 S) Z5 u
SDK不完整。
: V3 P) [4 B/ Z: B
' E+ p5 S' U q9 }2 z: k
5 s T4 {( C) E* b+ o8 k# ]0 K- H' f4 n" }' ^" m
解决方法:4 `- W; q: n; L }: a
* B5 l# N; g7 ?* ^4 f C
方法一
* ^( F. W+ [$ O- ?; j3 W$ M4 x% d
可在 \android-sdk-windows\tools\lib\目录下新建一个proguard.cfg文件# n) E2 L( W' g C. d5 |2 x
% L! Y# E3 D( P7 y# y
然后添下以下内容: s- \" Y. G% M0 z; W* l: J
+ W( f' P# K) O$ \( E
3 I6 W/ z7 R# }* A: r6 Hproguard.cfg( a W0 _2 |$ H8 c
-optimizationpasses 5
" Y; m/ p9 N6 W-dontusemixedcaseclassnames. |. }+ @6 a9 ?' e l
-dontskipnonpubliclibraryclasses0 ~$ s& R* ~. S: h2 Q; F, }
-dontpreverify
6 V( U! ~: {0 I3 g3 j- o6 ^( W( p-verbose
5 f$ s& Q. b: D( U$ V-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
8 T/ _. X' @ L' q4 w" |# h+ H/ T, [
-keep public class * extends android.app.Activity
& m- L7 N% G7 _5 C; Z9 t& @-keep public class * extends android.app.Application
8 f: ^+ A# X4 W% L7 M-keep public class * extends android.app.Service! U( Z0 I' Y+ i+ l, A* ^
-keep public class * extends android.content.BroadcastReceiver
1 f, @0 q& B) k1 I2 o-keep public class * extends android.content.ContentProvider
/ O3 J9 |0 O) [1 i) [-keep public class com.android.vending.licensing.ILicensingService
' Q0 k1 v2 `6 V, r- r5 I% I
( B: C: G8 Q' w3 v( b-keepclasseswithmembernames class * {
) s3 a4 u A9 u, I native <methods>;
3 O! d/ x5 B' W5 b+ C, V* H9 E$ o}
Z2 E2 R& s- L# a# K5 h* Z
: X7 J$ n& e- u2 W" S7 t-keepclasseswithmembernames class * {" y, {) m! L. t0 V0 P
public <init>(android.content.Context, android.util.AttributeSet);2 K" d- b6 O+ c
}
' H3 F+ M+ o ]; a7 B
3 o3 a# n! A1 s q-keepclasseswithmembernames class * {
- V! u, z' a8 I& O. _4 ], f public <init>(android.content.Context, android.util.AttributeSet, int);
1 T! l4 J$ j4 b0 J' r) }& |9 Z}9 C* }& h- G3 Z- T
; q! ]: o- s3 B; |( n-keepclassmembers enum * {1 j8 }$ ~& L* F- Y" }/ q8 Y! V
public static **[] values();
$ s, n/ F5 Z/ e7 y- n) ~ public static ** valueOf(java.lang.String);
7 s1 K9 A% M* Y9 K# l6 n, T7 |}
% `- }8 o- u5 b' h# j8 y) j) }+ ?1 t$ N) d4 v
-keep class * implements android.os.Parcelable {
6 g( Z& b, V) w, }: y% O2 B3 y public static final android.os.Parcelable$Creator *;
3 Q$ g6 w+ i- y# c p/ ?4 h; U}
1 N- ^& I$ x4 K1 M0 T7 g1 H0 G) n5 q
7 y( S5 Y- d, g8 Y7 g 5 R0 T9 l" M. }: P( B5 n+ \
: B- ]/ E1 r& E" d6 e4 G7 b$ k
方法二
2 w7 a# f% [* ]通过Android SDK and AVD Manager更新所有SDK。 |
|