- 在线时间
- 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文件 的错误
5 [! @2 j i2 g% r+ X4 ^问题概述:9 h4 ^! C1 B1 @3 w Y
( j) A5 [$ r9 d; y在新建Android程序的时候出现以下错误:- ^- Y9 n, _7 v3 a- n: z
$ r9 M, A# G( x! h* Z% N3 a
找不到 \android-sdk-windows\tools\lib\proguard.cfg文件
7 n; k5 b# B+ e+ X5 T4 F( b5 V/ G0 B- {
1 S0 X R4 X- I1 F. M A+ Z# H2 ^( J- h& B. ]
; H' p2 d: I" S5 P% d原因:2 |% t: G, e; i; t7 ?- Y! A5 [' E
9 y/ r3 j+ q, ?/ k" X# |+ R3 d w
SDK不完整。
- X4 ?3 V' y, J
: {0 b, W0 P4 X/ b* P$ Y$ l
* q4 s# T1 M& O7 B7 v+ h1 Y$ D: g# }7 n
解决方法:" u$ T. Q6 k6 G& G4 N
2 U6 Q5 [8 E1 z5 k方法一. N1 r$ |2 j/ V) p3 \6 B9 M
- U7 a5 f6 e& Y7 z, h可在 \android-sdk-windows\tools\lib\目录下新建一个proguard.cfg文件
& b/ M1 X: s, c% W4 i+ T# ^/ h& Z- X# _0 t9 \; ]' y
然后添下以下内容:# X) w5 ^. I% h# W% p7 u9 R. O
3 B9 E0 P- k* Q% w& n* a, P9 e
proguard.cfg0 t+ S3 b' k r) C! z. M. r
-optimizationpasses 5
( V9 f+ T6 f$ g2 @0 D-dontusemixedcaseclassnames
3 S3 L( o4 J" y( s-dontskipnonpubliclibraryclasses, [ u- ]1 M" t
-dontpreverify
8 n6 _1 c5 Z0 p% D4 M-verbose! I8 o- w- \& ^/ y
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*7 e t( N* b" }5 n
' B* ]- t, g9 @
-keep public class * extends android.app.Activity" @, Q; x9 N$ E6 k7 c- q9 k+ J
-keep public class * extends android.app.Application: y; B7 a3 B; Y2 K$ E
-keep public class * extends android.app.Service
* p6 P) K3 v7 V-keep public class * extends android.content.BroadcastReceiver5 W) Q- E7 S3 r
-keep public class * extends android.content.ContentProvider
$ ^' j9 b0 W) E6 _/ ]) P-keep public class com.android.vending.licensing.ILicensingService i6 ~2 n$ V6 X
1 D) x4 J( y9 T6 P-keepclasseswithmembernames class * {6 M, x& _; F) i* l4 P
native <methods>;
( q$ C( j6 A0 [ }# M4 u# _}
+ X% e$ l/ ?( k2 h/ Z8 J
# k0 M+ W# k: x7 x+ \6 o: w-keepclasseswithmembernames class * {
# j( A8 X+ c9 | public <init>(android.content.Context, android.util.AttributeSet);
" ^. ^1 t. _. b7 u/ _+ [, [}2 {+ h2 b$ O: E! q0 \8 v
0 n B* O( A2 P$ C1 f' ?# l# j
-keepclasseswithmembernames class * {
# ` H- W/ O6 `- P# C public <init>(android.content.Context, android.util.AttributeSet, int);
0 T& j* W7 p7 ]6 g0 c7 S}7 n% l7 M5 v* U) l: r! Q# R8 d
' `' }! B6 p4 i/ [-keepclassmembers enum * {$ A h8 V: S* x q
public static **[] values();2 Q6 Z U8 }5 G9 d/ o! o$ M
public static ** valueOf(java.lang.String);
$ u" b/ i- b4 B- `$ {" S- K}
) K5 d9 T, ~; U7 U- `* K0 q* z9 o9 R/ u1 j4 O
-keep class * implements android.os.Parcelable {
: d5 c/ U0 o/ d8 Q public static final android.os.Parcelable$Creator *;2 _5 A; W+ U! c I5 v
}
* l# ?1 c) ]' ?$ S
" m, K: S, X( m5 S " ^4 g; E0 T6 o: Q2 H; }
3 u% h7 W1 O0 T" z3 H+ P! k8 p3 F a9 n方法二
. q4 ^3 h; J V5 l e9 {通过Android SDK and AVD Manager更新所有SDK。 |
|