简体   繁体   中英

Getting error when build apk using proguard and build-variant is release in android

Hello everyone, I am trying to build my apk with build-variant release but facing some error.I have also try to use -keep,-keepclassmembers,-keepclasseswithmembers and -dontwarn in proguard-rules.pro,but not able to get any solution.I am not having default proguard-rules.pro so I copied it from another project.I want to know how can i build my apk with release.

       **This is my build.gradle file**
        apply plugin: 'com.android.application'  android {
            signingConfigs {
                config {
                    keyAlias 'KeyAlias'
                    keyPassword 'password'
                    storeFile 'keycorner.jks'
                    storePassword 'password'
                }
            }
            compileSdkVersion 23
            buildToolsVersion "23.0.2"
            defaultConfig {
                applicationId "com.example.demo"
                minSdkVersion 11
                targetSdkVersion 23
                multiDexEnabled true

            }
            dexOptions {
                incremental true
                javaMaxHeapSize "4g"
            }
            lintOptions {
                disable "ResourceType"
            }
            buildTypes {
                release {
                    minifyEnabled true
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
            }
        }  
        **These are the warning coming:-**
        Note: duplicate definition of library class [android.net.http.SslCertificate]
        Note: duplicate definition of library class [android.net.http.SslError]
        Note: duplicate definition of library class [android.net.http.SslCertificate$DName]
        Note: duplicate definition of library class [org.apache.http.conn.scheme.SocketFactory]
        Note: duplicate definition of library class [org.apache.http.conn.scheme.HostNameResolver]
        Note: duplicate definition of library class [org.apache.http.conn.ConnectTimeoutException]
        Note: duplicate definition of library class [org.apache.http.params.HttpParams]
        Note: there were 7 duplicate class definitions.
              (http://proguard.sourceforge.net/manual/troubleshooting.html#duplicateclass)
        Initializing...
        Note: the configuration refers to the unknown class 'com.google.vending.licensing.ILicensingService'
        Note: the configuration refers to the unknown class 'com.android.vending.licensing.ILicensingService'
        Note: the configuration refers to the unknown class 'com.android.vending.licensing.ILicensingService'
        Note: android.support.v4.app.NotificationCompatJellybean calls 'Field.getType'
        Note: com.google.android.gms.internal.zzsv calls 'Field.getType'
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.sim.Fingerprint
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.data.sim.HostedPaymentFormSettings
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.data.sim.HostedReceiptPageSettings
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.sim.LinkMethod
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.data.sim.HostedReceiptPageSettings
        Warning:net.authorize.sim.Transaction: can't find referenced class net.authorize.sim.button.Button
        Warning:net.authorize.sim.Transaction: can't find referenced class 
        Note: the configuration keeps the entry point 'android.support.design.widget.NavigationView { void setNavigationItemSelectedListener(android.support.design.widget.NavigationView$OnNavigationItemSelectedListener); }', but not the descriptor class 'android.support.design.widget.NavigationView$OnNavigationItemSelectedListener'
        Note: the configuration keeps the entry point 'android.support.design.widget.Snackbar$SnackbarLayout { void setOnLayoutChangeListener(android.support.design.widget.Snackbar$SnackbarLayout$OnLayoutChangeListener); }', but not the descriptor class 'android.support.design.widget.Snackbar$SnackbarLayout$OnLayoutChangeListener'
        Note: the configuration keeps the entry point 'android.support.design.widget.Snackbar$SnackbarLayout { void setOnAttachStateChangeListener(android.support.design.widget.Snackbar$SnackbarLayout$OnAttachStateChangeListener); }', but not the descriptor class 'android.support.design.widget.Snackbar$SnackbarLayout$OnAttachStateChangeListener'
        Note: the configuration keeps the entry point 'android.support.design.widget.TabLayout { void setOnTabSelectedListener(android.support.design.widget.TabLayout$OnTabSelectedListener); }', but not the descriptor class 'android.support.design.widget.TabLayout$OnTabSelectedListener'
        Note: the configuration keeps the entry point 'android.support.design.widget.TabLayout { void setTabsFromPagerAdapter(android.support.v4.view.PagerAdapter); }', but not the descriptor class 'android.support.v4.view.PagerAdapter'
        Note: the configuration keeps the entry point 'android.support.v4.app.FragmentTabHost { void setup(android.content.Context,android.support.v4.app.FragmentManager); }', but not the descriptor class 'android.support.v4.app.FragmentManager'
        Note: the configuration keeps the entry point 'android.support.v4.app.FragmentTabHost { void setup(android.content.Context,android.support.v4.app.FragmentManager,int); }', but not the descriptor class 'android.support.v4.app.FragmentManager'
        Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void setAdapter(android.support.v4.view.PagerAdapter); }', but not the descriptor class 'android.support.v4.view.PagerAdapter'
        Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void setOnAdapterChangeListener(android.support.v4.view.ViewPager$OnAdapterChangeListener); }', but not the descriptor class 'android.support.v4.view.ViewPager$OnAdapterChangeListener'
        Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void setOnPageChangeListener(android.support.v4.view.ViewPager$OnPageChangeListener); }', but not the descriptor class 'android.support.v4.view.ViewPager$OnPageChangeListener'
        Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void setPageTransformer(boolean,android.support.v4.view.ViewPager$PageTransformer); }', but not the descriptor class 'android.support.v4.view.ViewPager$PageTransformer'
        Note: the configuration keeps the entry point 'android.support.v4.widget.DrawerLayout { void setDrawerListener(android.support.v4.widget.DrawerLayout$DrawerListener); }', but not the descriptor class 'android.support.v4.widget.DrawerLayout$DrawerListener'
        Note: the configuration keeps the entry point 'android.support.v4.widget.NestedScrollView { void setOnScrollChangeListener(android.support.v4.widget.NestedScrollView$OnScrollChangeListener); }', but not the descriptor class 'android.support.v4.widget.NestedScrollView$OnScrollChangeListener'
        Note: the configuration keeps the entry point 'android.support.v4.widget.SlidingPaneLayout { void setPanelSlideListener(android.support.v4.widget.SlidingPaneLayout$PanelSlideListener); }', but not the descriptor class 'android.support.v4.widget.SlidingPaneLayout$PanelSlideListener'
        Note: the configuration keeps the entry point 'android.support.v4.widget.SwipeRefreshLayout { void setOnRefreshListener(android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener); }', but not the descriptor class 'android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener'
        Note: the configuration keeps the entry point 'android.support.v7.app.MediaRouteButton { void setRouteSelector(android.support.v7.media.MediaRouteSelector); }', but not the descriptor class 'android.support.v7.media.MediaRouteSelector'
        Note: the configuration keeps the entry point 'android.support.v7.app.MediaRouteButton { void setDialogFactory(android.support.v7.app.MediaRouteDialogFactory); }', but not the descriptor class 'android.support.v7.app.MediaRouteDialogFactory'
        Note: the configuration keeps the entry point 'android.support.v7.view.menu.ActionMenuItemView { void setItemInvoker(android.support.v7.view.menu.MenuBuilder$ItemInvoker); }', but not the descriptor class 'android.support.v7.view.menu.MenuBuilder$ItemInvoker'
        Note: the configuration keeps the entry point 'android.support.v7.view.menu.ActionMenuItemView { void setPopupCallback(android.support.v7.view.menu.ActionMenuItemView$PopupCallback); }', but not the descriptor class 'android.support.v7.view.menu.ActionMenuItemView$PopupCallback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionBarOverlayLayout { void setActionBarVisibilityCallback(android.support.v7.widget.ActionBarOverlayLayout$ActionBarVisibilityCallback); }', but not the descriptor class 'android.support.v7.widget.ActionBarOverlayLayout$ActionBarVisibilityCallback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionBarOverlayLayout { void setMenu(android.view.Menu,android.support.v7.view.menu.MenuPresenter$Callback); }', but not the descriptor class 'android.support.v7.view.menu.MenuPresenter$Callback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionMenuView { void setPresenter(android.support.v7.widget.ActionMenuPresenter); }', but not the descriptor class 'android.support.v7.widget.ActionMenuPresenter'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionMenuView { void setOnMenuItemClickListener(android.support.v7.widget.ActionMenuView$OnMenuItemClickListener); }', but not the descriptor class 'android.support.v7.widget.ActionMenuView$OnMenuItemClickListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionMenuView { void setMenuCallbacks(android.support.v7.view.menu.MenuPresenter$Callback,android.support.v7.view.menu.MenuBuilder$Callback); }', but not the descriptor class 'android.support.v7.view.menu.MenuPresenter$Callback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActionMenuView { void setMenuCallbacks(android.support.v7.view.menu.MenuPresenter$Callback,android.support.v7.view.menu.MenuBuilder$Callback); }', but not the descriptor class 'android.support.v7.view.menu.MenuBuilder$Callback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActivityChooserView { void setActivityChooserModel(android.support.v7.widget.ActivityChooserModel); }', but not the descriptor class 'android.support.v7.widget.ActivityChooserModel'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ActivityChooserView { void setProvider(android.support.v4.view.ActionProvider); }', but not the descriptor class 'android.support.v4.view.ActionProvider'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ContentFrameLayout { void setAttachListener(android.support.v7.widget.ContentFrameLayout$OnAttachListener); }', but not the descriptor class 'android.support.v7.widget.ContentFrameLayout$OnAttachListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.FitWindowsFrameLayout { void setOnFitSystemWindowsListener(android.support.v7.widget.FitWindowsViewGroup$OnFitSystemWindowsListener); }', but not the descriptor class 'android.support.v7.widget.FitWindowsViewGroup$OnFitSystemWindowsListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.FitWindowsLinearLayout { void setOnFitSystemWindowsListener(android.support.v7.widget.FitWindowsViewGroup$OnFitSystemWindowsListener); }', but not the descriptor class 'android.support.v7.widget.FitWindowsViewGroup$OnFitSystemWindowsListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setAccessibilityDelegateCompat(android.support.v7.widget.RecyclerViewAccessibilityDelegate); }', but not the descriptor class 'android.support.v7.widget.RecyclerViewAccessibilityDelegate'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setAdapter(android.support.v7.widget.RecyclerView$Adapter); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$Adapter'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setRecyclerListener(android.support.v7.widget.RecyclerView$RecyclerListener); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$RecyclerListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$LayoutManager'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setRecycledViewPool(android.support.v7.widget.RecyclerView$RecycledViewPool); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$RecycledViewPool'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setViewCacheExtension(android.support.v7.widget.RecyclerView$ViewCacheExtension); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$ViewCacheExtension'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setChildDrawingOrderCallback(android.support.v7.widget.RecyclerView$ChildDrawingOrderCallback); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$ChildDrawingOrderCallback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setOnScrollListener(android.support.v7.widget.RecyclerView$OnScrollListener); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$OnScrollListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.RecyclerView { void setItemAnimator(android.support.v7.widget.RecyclerView$ItemAnimator); }', but not the descriptor class 'android.support.v7.widget.RecyclerView$ItemAnimator'
        Note: the configuration keeps the entry point 'android.support.v7.widget.SearchView { void setOnQueryTextListener(android.support.v7.widget.SearchView$OnQueryTextListener); }', but not the descriptor class 'android.support.v7.widget.SearchView$OnQueryTextListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.SearchView { void setOnCloseListener(android.support.v7.widget.SearchView$OnCloseListener); }', but not the descriptor class 'android.support.v7.widget.SearchView$OnCloseListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.SearchView { void setOnSuggestionListener(android.support.v7.widget.SearchView$OnSuggestionListener); }', but not the descriptor class 'android.support.v7.widget.SearchView$OnSuggestionListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.SearchView { void setSuggestionsAdapter(android.support.v4.widget.CursorAdapter); }', but not the descriptor class 'android.support.v4.widget.CursorAdapter'
        Note: the configuration keeps the entry point 'android.support.v7.widget.Toolbar { void setMenu(android.support.v7.view.menu.MenuBuilder,android.support.v7.widget.ActionMenuPresenter); }', but not the descriptor class 'android.support.v7.view.menu.MenuBuilder'
        Note: the configuration keeps the entry point 'android.support.v7.widget.Toolbar { void setMenu(android.support.v7.view.menu.MenuBuilder,android.support.v7.widget.ActionMenuPresenter); }', but not the descriptor class 'android.support.v7.widget.ActionMenuPresenter'
        Note: the configuration keeps the entry point 'android.support.v7.widget.Toolbar { void setOnMenuItemClickListener(android.support.v7.widget.Toolbar$OnMenuItemClickListener); }', but not the descriptor class 'android.support.v7.widget.Toolbar$OnMenuItemClickListener'
        Note: the configuration keeps the entry point 'android.support.v7.widget.Toolbar { void setMenuCallbacks(android.support.v7.view.menu.MenuPresenter$Callback,android.support.v7.view.menu.MenuBuilder$Callback); }', but not the descriptor class 'android.support.v7.view.menu.MenuPresenter$Callback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.Toolbar { void setMenuCallbacks(android.support.v7.view.menu.MenuPresenter$Callback,android.support.v7.view.menu.MenuBuilder$Callback); }', but not the descriptor class 'android.support.v7.view.menu.MenuBuilder$Callback'
        Note: the configuration keeps the entry point 'android.support.v7.widget.ViewStubCompat { void setOnInflateListener(android.support.v7.widget.ViewStubCompat$OnInflateListener); }', but not the descriptor class 'android.support.v7.widget.ViewStubCompat$OnInflateListener'
        Note: the configuration keeps the entry point 'com.android.volley.toolbox.NetworkImageView { void setImageUrl(java.lang.String,com.android.volley.toolbox.ImageLoader); }', but not the descriptor class 'com.android.volley.toolbox.ImageLoader'
        Note: the configuration keeps the entry point 'com.facebook.FacebookButtonBase { void setFragment(android.support.v4.app.Fragment); }', but not the descriptor class 'android.support.v4.app.Fragment'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setDefaultAudience(com.facebook.login.DefaultAudience); }', but not the descriptor class 'com.facebook.login.DefaultAudience'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setLoginBehavior(com.facebook.login.LoginBehavior); }', but not the descriptor class 'com.facebook.login.LoginBehavior'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setToolTipStyle(com.facebook.login.widget.ToolTipPopup$Style); }', but not the descriptor class 'com.facebook.login.widget.ToolTipPopup$Style'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setToolTipMode(com.facebook.login.widget.LoginButton$ToolTipMode); }', but not the descriptor class 'com.facebook.login.widget.LoginButton$ToolTipMode'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setProperties(com.facebook.login.widget.LoginButton$LoginButtonProperties); }', but not the descriptor class 'com.facebook.login.widget.LoginButton$LoginButtonProperties'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.LoginButton { void setLoginManager(com.facebook.login.LoginManager); }', but not the descriptor class 'com.facebook.login.LoginManager'
        Note: the configuration keeps the entry point 'com.facebook.login.widget.ProfilePictureView { void setOnErrorListener(com.facebook.login.widget.ProfilePictureView$OnErrorListener); }', but not the descriptor class 'com.facebook.login.widget.ProfilePictureView$OnErrorListener'
        Note: the configuration keeps the entry point 'com.facebook.share.internal.LikeBoxCountView { void setCaretPosition(com.facebook.share.internal.LikeBoxCountView$LikeBoxCountViewCaretPosition); }', but not the descriptor class 'com.facebook.share.internal.LikeBoxCountView$LikeBoxCountViewCaretPosition'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setObjectIdAndType(java.lang.String,com.facebook.share.widget.LikeView$ObjectType); }', but not the descriptor class 'com.facebook.share.widget.LikeView$ObjectType'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setLikeViewStyle(com.facebook.share.widget.LikeView$Style); }', but not the descriptor class 'com.facebook.share.widget.LikeView$Style'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setAuxiliaryViewPosition(com.facebook.share.widget.LikeView$AuxiliaryViewPosition); }', but not the descriptor class 'com.facebook.share.widget.LikeView$AuxiliaryViewPosition'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setHorizontalAlignment(com.facebook.share.widget.LikeView$HorizontalAlignment); }', but not the descriptor class 'com.facebook.share.widget.LikeView$HorizontalAlignment'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setOnErrorListener(com.facebook.share.widget.LikeView$OnErrorListener); }', but not the descriptor class 'com.facebook.share.widget.LikeView$OnErrorListener'
        Note: the configuration keeps the entry point 'com.facebook.share.widget.LikeView { void setFragment(android.support.v4.app.Fragment); }', but not the descriptor class 'android.support.v4.app.Fragment'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.AdView { void setPlayStorePurchaseParams(com.google.android.gms.ads.purchase.PlayStorePurchaseListener,java.lang.String); }', but not the descriptor class 'com.google.android.gms.ads.purchase.PlayStorePurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.AdView { void setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener); }', but not the descriptor class 'com.google.android.gms.ads.purchase.InAppPurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.AdView { void setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor class 'com.google.android.gms.ads.AdSize'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.AdView { void setAdListener(com.google.android.gms.ads.AdListener); }', but not the descriptor class 'com.google.android.gms.ads.AdListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.BaseAdView { void setAdListener(com.google.android.gms.ads.AdListener); }', but not the descriptor class 'com.google.android.gms.ads.AdListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.BaseAdView { void setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor class 'com.google.android.gms.ads.AdSize'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.BaseAdView { void setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener); }', but not the descriptor class 'com.google.android.gms.ads.purchase.InAppPurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.BaseAdView { void setPlayStorePurchaseParams(com.google.android.gms.ads.purchase.PlayStorePurchaseListener,java.lang.String); }', but not the descriptor class 'com.google.android.gms.ads.purchase.PlayStorePurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.NativeExpressAdView { void setPlayStorePurchaseParams(com.google.android.gms.ads.purchase.PlayStorePurchaseListener,java.lang.String); }', but not the descriptor class 'com.google.android.gms.ads.purchase.PlayStorePurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.NativeExpressAdView { void setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener); }', but not the descriptor class 'com.google.android.gms.ads.purchase.InAppPurchaseListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.NativeExpressAdView { void setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor class 'com.google.android.gms.ads.AdSize'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.NativeExpressAdView { void setAdListener(com.google.android.gms.ads.AdListener); }', but not the descriptor class 'com.google.android.gms.ads.AdListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.doubleclick.PublisherAdView { void setAdListener(com.google.android.gms.ads.AdListener); }', but not the descriptor class 'com.google.android.gms.ads.AdListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.doubleclick.PublisherAdView { void setAdSizes(com.google.android.gms.ads.AdSize[]); }', but not the descriptor class 'com.google.android.gms.ads.AdSize'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.doubleclick.PublisherAdView { void setAppEventListener(com.google.android.gms.ads.doubleclick.AppEventListener); }', but not the descriptor class 'com.google.android.gms.ads.doubleclick.AppEventListener'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.doubleclick.PublisherAdView { void setCorrelator(com.google.android.gms.ads.Correlator); }', but not the descriptor class 'com.google.android.gms.ads.Correlator'
        Note: the configuration keeps the entry point 'com.google.android.gms.ads.doubleclick.PublisherAdView { void setOnCustomRenderedAdLoadedListener(com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener); }', but not the descriptor class 'com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener'
    (http://proguard.sourceforge.net/manual/troubleshooting.html#unknownclass)
        Note: there were 2 classes trying to access generic signatures using reflection.
              You should consider keeping the signature attributes
              (using '-keepattributes Signature').
              (http://proguard.sourceforge.net/manual/troubleshooting.html#attributes)
        Note: there were 87 unkept descriptor classes in kept class members.
              You should consider explicitly keeping the mentioned classes
              (using '-keep').
              (http://proguard.sourceforge.net/manual/troubleshooting.html#descriptorclass)
        Note: there were 80 library classes explicitly being kept.
              You don't need to keep library classes; they are already left unchanged.
              (http://proguard.sourceforge.net/manual/troubleshooting.html#libraryclass)
        Note: there were 20 unresolved dynamic references to classes or interfaces.
              You should check if you need to specify additional program jars.
              (http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclass)
        Warning:there were 49 unresolved references to classes or interfaces.
                 You may need to add missing library jars or update their versions.
                 If your code works fine without the missing classes, you can suppress
                 the warnings with '-dontwarn' options.
                 (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
        Warning:Exception while processing task java.io.IOException: Please correct the above warnings first.
        :app:transformClassesAndResourcesWithProguardForRelease FAILED
        Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'.
        > java.io.IOException: Please correct the above warnings first.
        Information:BUILD FAILED
        Information:Total time: 15.407 secs
        Information:1 error
        Information:25 warnings
        Information:See complete output in console

To get past the current error you need to add the following to your ProGuard configuration rules:

-dontwarn net.authorize.sim.Transaction

After that you might still need to add additional -keep rules but at least the build should not fail anymore.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM