- 在线时间
- 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文件 的错误/ O8 P9 h1 A- T7 R6 P5 r4 y2 o8 s
问题概述:
4 }) _7 ]! @" F7 P0 `' O
: q7 v. r# a" f9 ]8 u& ^在新建Android程序的时候出现以下错误:
% {( L& g: d& K5 s8 ?' f! {& t5 U9 w* B
找不到 \android-sdk-windows\tools\lib\proguard.cfg文件 P, d' K8 R- C& \; U; G! T
- r7 g/ ]2 X7 ?5 t
, ~/ ~2 e( `2 G" i. W1 ]* p. I5 y0 @% ]. p6 ?
原因:
) i$ X; Y% X# ^! p. g4 J
* ?$ X4 M; l& ?SDK不完整。
1 q; `. [8 R9 z$ B- m0 H6 Z7 |& d* V4 u9 |& U0 ~- i6 p9 C
( ^3 E4 K' |/ O7 U+ i' G6 a
- D; e" P8 W# x+ k% ^解决方法:
9 w2 G. C4 f+ Z! b
7 W9 d" z$ q0 v7 B. m+ T7 `方法一
3 s P. @( G/ |4 J% U. t2 D8 p( \0 ~ t5 I
可在 \android-sdk-windows\tools\lib\目录下新建一个proguard.cfg文件" n! C) S. | D
: x% o& C6 l% h6 O4 m然后添下以下内容:+ M, j! |& y" ?/ b% F; Z; Q3 t
) F2 k. q3 t" y, v/ D$ `% i, F: m% M5 |$ K
proguard.cfg! I' a7 B/ m" K M5 \
-optimizationpasses 5$ H1 s3 C# b. a |$ X
-dontusemixedcaseclassnames; @. o# q" _1 }2 |
-dontskipnonpubliclibraryclasses
2 ?6 a4 L2 L/ ^6 E+ A! _-dontpreverify
7 J5 ?& q. l, Q-verbose, w' c3 w0 p, u/ Y
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*) B/ R6 v% u. C1 k s, c
3 ]: I- w6 S( f! l$ x; ~
-keep public class * extends android.app.Activity
( ^. Z* \( F; n. r) |-keep public class * extends android.app.Application
6 c7 e2 ?( j) R) U-keep public class * extends android.app.Service
2 V+ S) z* X, B( c6 x+ \-keep public class * extends android.content.BroadcastReceiver. K& a7 `. S$ F+ i
-keep public class * extends android.content.ContentProvider
8 E ]9 Y5 [' o-keep public class com.android.vending.licensing.ILicensingService, I$ L, C# f) _0 m# k
o- A5 q9 l0 K% S
-keepclasseswithmembernames class * {- i6 a; e8 p+ r7 R- r) A
native <methods>;
4 k1 i3 g# ^# M7 y}. W# x2 Q* ~0 ~# j
0 I, X6 z X0 h' U! k. I-keepclasseswithmembernames class * {
' y! A' _% j$ S: m% K R- ~ public <init>(android.content.Context, android.util.AttributeSet);! \& j- L" T, U7 z8 d" X
}8 C$ f2 b2 n. B- ^2 j. ~2 _
V) k3 u& a6 c- B0 U/ j( p
-keepclasseswithmembernames class * {: O' x& Z/ F& V# E- F/ D4 a
public <init>(android.content.Context, android.util.AttributeSet, int);
: G/ S7 ~2 d# j) j* R3 _}- U7 a8 @/ }% S0 d! E" I. F! Q& h
6 H1 {% l, l6 f
-keepclassmembers enum * {/ A. h$ @" B- T# W# Q
public static **[] values();
" B3 C% H* b: C& C% V* L public static ** valueOf(java.lang.String);+ S5 _4 G% i6 ^6 d3 t. D. O
}+ J* f% x( |; D) J! \
: x; I* Q0 q4 j% V* j8 r- k v8 W) Z
-keep class * implements android.os.Parcelable {2 c+ @: o& V, j: B# p
public static final android.os.Parcelable$Creator *;
6 I0 J6 N1 y$ P}
3 z' b2 i" N- a2 `% ~! F
9 f! D7 d% P& f2 Q" M
/ @- { ~9 V( ? P
4 ?/ e u- h8 o1 b( b3 b方法二
& A0 U( ]& q4 J. s通过Android SDK and AVD Manager更新所有SDK。 |
|