΢ÐÅ¿ª·ÅÆ½Ì¨ÕæÊǶÀÌØ°¡£¡£¡£¡
΢ÐŵÄapµ÷ÓÃȷʵ±ðÐÂÀË΢²©£¬ÈËÈË£¬QQ»¥ÁªÕâЩ·½±ãºÜ¶à£¬Ò²²»ÓÃÅжϰó¶¨Ê²Ã´µÄ£¬ÈÃÈËÑÛǰһÁÁ¡£µ«Êǵ½´úÂë»ìÏýÕâÒ»²½£¬ÎÒÕæÏ¹ÁË£¬ÍøÉϹØÓÚ΢ÐÅÇ©Ãû»ìÏý×ÊÁϽ²µÄÈÃÈËÃþ²»×ÅÍ·ÄÔ£¬µ·¹ÄÁ˺ܾÃÖÕÓÚŪÃ÷°×ÁË¡£
µÚÒ»²½:
µÚ¶þ²½£º
ÔÚ³ÌÐòÖе÷ÓÃ΢ÐÅapi£¬¾ßÌå²½Ö裬΢ÐÅ¿ª·Åƽ̨µÄandroidÉÏÊÖÖ¸ÄϽ²µÄºÜÇå³þ¡£
µÚÈý²½£º
µ÷ÊÔapi£¬ÎªÁË·½±ãÎÒÃÇ¿ÉÒÔÏÈÓÃ΢ÐÅÌṩµÄdemo¡£Öص㣺1¡¢ÕÒµ½demo¸ùĿ¼ÏµÄdebug.keystoreÎļþ 2¡¢Ñ¡ÔñEclipse¶¥²¿²Ëµ¥Window->Preferences£¬Ñ¡ÔñAndroidĿ¼ÏµÄBuild 3¡¢Ö¸¶¨Custom debugkeystoreÑ¡ÏîµÄ·¾¶Îªsdk demo¹¤³ÌĿ¼ÖеÄdebug.keystoreÎļþ È·¶¨OK £¨µÚÒ»²½±£Ö¤ÁË΢ÐŵÄSDK demo¿ÉÒÔÕý³£Ê¹ÓÃÁË£©
µÚËIJ½£º
Ñ¡Ôñ×Ô¼ºµÄ³ÌÐò£¬ÓÒ¼üÔËÐе½ÊÖ»ú£¬È»ºóhttp://open.weixin.qq.com/download/sdk/gen_signature.apk
ÏÂÔØÇ©ÃûÓ¦Óã¬ÔÚÊÖ»úÖÐÔËÐУ¬¸ù¾ÝÌáʾÊäÈë³ÌÐòµÄ°üÃû»ñµÃÒ»¸öapkÇ©Ãû×Ö·û´®£¬×îºó½«Õâ¸ö×Ö·û´®Ìîµ½µÚÒ»²½µÄÓ¦ÓÃÇ©ÃûÀ¸´¦¡£±£´æOK ¿ÉÒÔÕý³£µ÷ÊÔÓ¦ÓÃÁË £¨ÕâÒ»²½Î¢ÐŵÄSDK Demo¶¼ÒѾ´¦ÀíºÃµÄ£¬ËùÒÔÎÒÃÇ×Ô¼ºÓ¦ÓÃÐèÒªµ¥¶À´¦Àí£©
µÚÎå²½£º
µ÷ÊÔ½áÊøºó£¬ÎÒÃǸÃÇ©Ãû´ò°üÁË£¬Ë³±ã°Ñ´úÂë»ìÏýÒ²×öÁË¡£´úÂë»ìÏýÅäÖò½ÖèÍøÉÏÒ»ËѾÍÓС£°´ÕÕSDK˵Ã÷ÔÚproguard.cfgÖÐÌí¼Ó
-keep class com.tencent.mm.sdk.openapi.WXMediaMessage {*; }
-keep class com.tencent.mm.sdk.openapi.** implements com.tencent.mm.sdk.openapi.WXMediaMessage$IMediaObject {*; }
¸½ÉÏÎÒµÄ proguard.cfgÄÚÈÝ£º
-optimizationpasses 2
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-ignorewarnings
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keepclasseswithmembers class * {
native ;
}
-keepclasseswithmembers class * {
public (android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public (android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keepclassmembers class **.R$* {
*;
}
-keepclassmembers class * {
public (org.json.JSONObject);
}
-keep public class com.android.mydemo.R$*{
public static final int *;
}
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
-keep class android.net.http.** {*; }
-keep class android.webkit.** {*; }
-keep class com.weibo.net.** {*; }
-keep class com.tencent.mm.sdk.openapi.WXMediaMessage {*; }
-keep class com.tencent.mm.sdk.openapi.** implements com.tencent.mm.sdk.openapi.WXMediaMessage$IMediaObject {*; }
×îºóÑ¡Ôñ³ÌÐò£¬ÓÒ¼ü--->android tools --->Ç©Ãû·¢²¼£¬°´²½ÖèÉú³ÉÒ»¸öÇ©ÃûkeystoreºÍÒ»¸ö¾¹ýÇ©ÃûµÄapk,°²×°¸ÃAPKµ½ÊÖ»ú£¬ÔÙÖØ¸´µÚËIJ½£¨°üÃû¸Ä±ä£©£¬»ñµÃÒ»¸öapkÇ©Ãû×Ö·û´®£¬Ð޸ĵÚÒ»²½ÖеĵÚÒ»²½µÄÓ¦ÓÃÇ©ÃûÀ¸£¬±£´æ¡£ ¿ÉÄÜÐèÒªÉÔ΢µÈÒ»¶Îʱ¼ä£¬Î¢ÐÅ·þÎñÆ÷ÓÐʱ·´Ó¦³Ù¶Û ´ó¹¦¸æ³É£¡£¡£¡
µÚÁù²½£º
΢ÐŵÄÇ©ÃûÑéÖ¤ÕæÁîÈ˵°ÌÛ£¬Ò»Æð±ÉÊÓһϣ¡
Ö§³ÖÔ´´~
ת·¢Ç븽¼ÓÁ´½Ó£¬Ð»Ð»£¡