Getting proguard warnings compiling after adding appodeal

Lots of warnings preventing me to compile release build. Any ideas what’s wrong? I’ve edited the project config file as suggested http://docs.sdkbox.com/en/plugins/appodeal/v3-cpp/ but it didn’t make a difference.

-obfuscate:
    [mkdir] Created dir: /.../cocos/platform/android/java/libs/cheetah-mobile/bin/proguard
      [jar] Building jar: /.../cocos/platform/android/java/libs/cheetah-mobile/bin/proguard/original.jar
 [proguard] ProGuard, version 4.7
 [proguard] Reading input...
 [proguard] Reading program jar [/.../cocos/platform/android/java/libs/cheetah-mobile/bin/proguard/original.jar]
 [proguard] Reading program jar [/.../cocos/platform/android/java/libs/cheetah-mobile/libs/cheetah-mobile.jar]
 [proguard] Reading library jar [/.../Library/Android/sdk/platforms/android-23/android.jar]
 [proguard] Initializing...
    [proguard] Warning: com.cmcm.picks.loader.c: can't find referenced class org.apache.http.message.BasicNameValuePair
     [proguard] Warning: com.cmcm.picks.loader.c: can't find referenced class org.apache.http.message.BasicNameValuePair
     [proguard] Warning: com.cmcm.picks.loader.c: can't find referenced class org.apache.http.NameValuePair
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.client.utils.URIUtils
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.client.utils.URLEncodedUtils
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.message.BasicNameValuePair
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.client.utils.URIUtils
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.client.utils.URLEncodedUtils
     [proguard] Warning: com.cmcm.picks.loader.f$a: can't find referenced class org.apache.http.message.BasicNameValuePair
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.Header
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpEntity
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.StatusLine
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpGet
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpPost
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.ClientConnectionManager
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.params.ConnManagerParams
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.PlainSocketFactory
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.Scheme
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.SchemeRegistry
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.entity.StringEntity
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.impl.client.DefaultHttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.impl.conn.SingleClientConnManager
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.params.BasicHttpParams
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpGet
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpGet
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpPost
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.methods.HttpPost
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.params.ConnManagerParams
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.params.ConnManagerParams
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.PlainSocketFactory
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.Scheme
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.SchemeRegistry
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.SchemeRegistry
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.entity.StringEntity
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.impl.client.DefaultHttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.impl.conn.SingleClientConnManager
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.params.BasicHttpParams
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.Header
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpEntity
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.StatusLine
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.ClientConnectionManager
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.client.HttpClient
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.scheme.SchemeRegistry
     [proguard] Warning: com.cmcm.utils.f: can't find referenced class org.apache.http.conn.ClientConnectionManager
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.Header
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.StatusLine
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.Header
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.HttpResponse
     [proguard] Warning: com.cmcm.utils.k$a: can't find referenced class org.apache.http.StatusLine
     [proguard] Note: com.cmcm.utils.Commons: can't find dynamically referenced class android.os.SystemProperties
     [proguard] Note: com.cmcm.utils.Commons: can't find dynamically referenced class android.os.SystemProperties
     [proguard] Note: the configuration refers to the unknown class 'com.google.vending.licensing.ILicensingService'
     [proguard] Note: the configuration refers to the unknown class 'com.android.vending.licensing.ILicensingService'
     [proguard] Note: the configuration refers to the unknown class 'android.support.annotation.Keep'
     [proguard] Note: the configuration refers to the unknown class 'android.support.annotation.Keep'
     [proguard] Note: the configuration refers to the unknown class 'android.support.annotation.Keep'
     [proguard] Note: the configuration refers to the unknown class 'android.support.annotation.Keep'
     [proguard] Note: the configuration refers to the unknown class 'android.support.annotation.Keep'
     [proguard] Note: the configuration refers to the unknown class 'com.cmcm.picks.init.DownloadService'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.CMBaseNativeloaderAdapter { void setAdListener(com.cmcm.baseapi.ads.INativeAdLoaderListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAdLoaderListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.CMBaseNativeloaderAdapter { void setAdClickListener(com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.NativeloaderAdapter { void notifyNativeAdLoaded(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.NativeloaderAdapter { void callBack(java.lang.String,com.cmcm.baseapi.ads.INativeAd,java.util.List,java.lang.String); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.NativeloaderAdapter$CallBackRunnable { NativeloaderAdapter$CallBackRunnable(com.cmcm.adsdk.adapter.NativeloaderAdapter,java.lang.String,com.cmcm.baseapi.ads.INativeAd,java.util.List,java.lang.String); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.NativeloaderAdapter$NativeAdapterListener { void onNativeAdLoaded(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.PicksInterstatialAdapter$PicksInterstatialAd { PicksInterstatialAdapter$PicksInterstatialAd(com.cmcm.adsdk.adapter.PicksInterstatialAdapter,com.cmcm.picks.loader.Ad,android.content.Context); }', but not the descriptor class 'com.cmcm.picks.loader.Ad'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.adapter.PicksNativeAdapter$PicksNativeAd { PicksNativeAdapter$PicksNativeAd(com.cmcm.adsdk.adapter.PicksNativeAdapter,com.cmcm.picks.loader.Ad,android.content.Context); }', but not the descriptor class 'com.cmcm.picks.loader.Ad'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.banner.CMAdView$MyBannerViewLoadListener { void adClicked(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.banner.CMNativeBannerView { void renderBannerData(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.banner.CMNativeBannerView$1 { void adClicked(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.base.CMBaseNativeAd { void setAdOnClickListener(com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.base.CMBaseNativeAd { void notifyNativeAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.base.CMBaseNativeAd { void setImpressionListener(com.cmcm.baseapi.ads.INativeAd$ImpressionListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$ImpressionListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.base.CMBaseNativeAd { void setMpaModule(com.cmcm.picks.loader.MpaModule); }', but not the descriptor class 'com.cmcm.picks.loader.MpaModule'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.base.CMBaseNativeAd$IClickPreHanleListener { boolean preHandle(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.interstitial.InterstitialAdManager { void adClicked(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.interstitial.PicksInterstitialActivity { void setNativeAd(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAd { CMNativeAd(android.content.Context,com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener,java.util.Map,com.cmcm.adsdk.base.CMBaseNativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAd { void onAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAd { void setAdOnClickListener(com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAdLoader { void onNativeAdLoaded(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAdLoader { void onAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAdLoader { void appendAd(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.CMNativeAdLoader { void recordClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdLoaderMap { void updateLoaders(android.content.Context,java.util.List,com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdLoaderMap { com.cmcm.adsdk.nativead.CMNativeAdLoader getAdLoader(android.content.Context,com.cmcm.adsdk.config.PosBean,com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$IAdOnClickListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManager { void setNativeAdListener(com.cmcm.baseapi.ads.INativeAdLoaderListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAdLoaderListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerInternal { void setAdListener(com.cmcm.baseapi.ads.INativeAdLoaderListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAdLoaderListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerInternal { void onAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerInternal$2 { NativeAdManagerInternal$2(com.cmcm.adsdk.nativead.NativeAdManagerInternal,com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerInternalEx$ImageINativeAd { NativeAdManagerInternalEx$ImageINativeAd(com.cmcm.baseapi.ads.INativeAd,int); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerMini { void setNativeAdListener(com.cmcm.baseapi.ads.INativeAdLoaderListener); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAdLoaderListener'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerMini { void onNativeAdLoaded(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerMini { void onAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdManagerMini { void appendAd(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NativeAdsManagerInternal { boolean checkPoolHasAd(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NewsFlowAdsLoader { boolean checkPoolHasAd(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NewsFlowAdsLoader { void adClicked(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NewsFlowAdsLoader$4 { NewsFlowAdsLoader$4(com.cmcm.adsdk.nativead.NewsFlowAdsLoader,com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.NewsFlowAdsLoader$NewsFlowAdListener { void onAdClick(com.cmcm.baseapi.ads.INativeAd); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd'
     [proguard] Note: the configuration keeps the entry point 'com.cmcm.adsdk.nativead.PicksViewCheckHelper { PicksViewCheckHelper(android.content.Context,android.view.View,com.cmcm.baseapi.ads.INativeAd$ImpressionListener,boolean); }', but not the descriptor class 'com.cmcm.baseapi.ads.INativeAd$ImpressionListener'
     [proguard] Note: there were 8 references to unknown classes.
     [proguard]       You should check your configuration for typos.
     [proguard] Note: there were 42 unkept descriptor classes in kept class members.
     [proguard]       You should consider explicitly keeping the mentioned classes
     [proguard]       (using '-keep').
     [proguard] Note: there were 2 unresolved dynamic references to classes or interfaces.
     [proguard]       You should check if you need to specify additional program jars.
     [proguard] Warning: there were 62 unresolved references to classes or interfaces.
     [proguard]          You may need to specify additional library jars (using '-libraryjars').

So I had to add these three lines for my app to compile:

-dontwarn org.apache.http.**
-dontwarn android.net.http.AndroidHttpClient
-dontwarn android.webkit.**

I’m going to deploy the next beta with this and see if the ads work.

I did have to put all that into proguard-android.txt not proguard-project.txt because for whatever reason that file isn’t being read.

Right I’m just getting a lot of errors popping up now when the game runs, Cheetah is missing, android-support-v4.jar not found, bunch of missing activities… think I’m gonna rollback to before I install appodeal.

try add follow code:

#Cheetah Mobile
-keep class com.cmcm.** { *; }
-dontwarn com.cmcm.**

take a look at this file:

https://github.com/sdkbox/sdkbox-sample-appodeal/blob/master/cpp/proj.android/libs/cheetah-mobile/proguard-project.txt