极长的构建时间

时间:2015-12-07 14:20:15

标签: android build android-gradle

在我的项目中添加Exoplayer作为模块后,我在Gradle Console日志中收到了这些消息;

:app:transformClassesWithJarMergingForDebug
:app:collectDebugMultiDexComponents UP-TO-DATE
:app:transformClassesWithMultidexlistForDebug
ProGuard, version 5.2.1
Reading program jar [/home/kombo/Radio Africa/Music Player/app/build/intermediates/transforms/jarMerging/debug/jars/1/1f/combined.jar]
Reading library jar [/home/kombo/Android Studio/Sdk/build-tools/23.0.2/lib/shrinkedAndroid.jar]
Note: android.support.design.widget.CoordinatorLayout calls 'Class.getAnnotation'
Note: com.google.gson.FieldAttributes calls 'Field.getAnnotation'
Note: com.google.gson.FieldAttributes calls 'Field.getAnnotations'
Note: com.google.gson.internal.Excluder calls 'Field.getAnnotation'
Note: com.google.gson.internal.Excluder calls 'Class.getAnnotation'
Note: com.google.gson.internal.bind.ReflectiveTypeAdapterFactory calls 'Field.getAnnotation'
Note: com.google.gson.internal.bind.TypeAdapters$EnumTypeAdapter calls 'Field.getAnnotation'
Note: com.parse.ParseObject calls 'Class.getAnnotation'
Note: io.fabric.sdk.android.Fabric calls 'Class.getAnnotation'
Note: io.fabric.sdk.android.Kit calls 'Class.getAnnotation'
Note: retrofit.RestMethodInfo calls 'Method.getAnnotations'
Note: retrofit.RestMethodInfo calls 'Class.getAnnotations'
Note: retrofit.RestMethodInfo calls 'Method.getParameterAnnotations'
Note: android.support.v4.app.NotificationCompatJellybean calls 'Field.getType'
Note: com.digits.sdk.android.ActivityClassManagerFactory$ThemeAttributes calls 'Field.getType'
Note: com.digits.sdk.android.ThemeUtils calls 'Field.getType'
Note: com.google.android.gms.internal.zztl calls 'Field.getType'
Note: com.google.gson.FieldAttributes calls 'Field.getGenericType'
Note: com.google.gson.FieldAttributes calls 'Field.getType'
Note: com.google.gson.internal.$Gson$Types calls 'Class.getGenericInterfaces'
Note: com.google.gson.internal.$Gson$Types calls 'Class.getGenericSuperclass'
Note: com.google.gson.internal.$Gson$Types calls 'Class.getTypeParameters'
Note: com.google.gson.internal.Excluder calls 'Field.getType'
Note: com.google.gson.internal.bind.ReflectiveTypeAdapterFactory calls 'Field.getType'
Note: com.google.gson.internal.bind.ReflectiveTypeAdapterFactory calls 'Field.getGenericType'
Note: com.google.gson.internal.bind.ReflectiveTypeAdapterFactory calls 'Class.getGenericSuperclass'
Note: com.google.gson.reflect.TypeToken calls 'Class.getGenericSuperclass'
Note: com.google.gson.reflect.TypeToken calls 'Class.getTypeParameters'
Note: com.google.gson.reflect.TypeToken calls 'Class.getGenericInterfaces'
Note: com.nineoldandroids.util.ReflectiveProperty calls 'Field.getType'
Note: retrofit.RestMethodInfo calls 'Method.getGenericReturnType'
Note: retrofit.RestMethodInfo calls 'Method.getGenericParameterTypes'
Note: retrofit.Types calls 'Class.getGenericInterfaces'
Note: retrofit.Types calls 'Class.getGenericSuperclass'
Note: retrofit.Types calls 'Class.getTypeParameters'
Note: com.google.gson.internal.$Gson$Types$ParameterizedTypeImpl calls 'Class.getEnclosingClass'
Note: retrofit.Types$ParameterizedTypeImpl calls 'Class.getEnclosingClass'
Note: android.support.v4.app.NotificationCompatJellybean: can't find dynamically referenced class android.app.Notification$Action
Note: android.support.v4.text.ICUCompatApi23: can't find dynamically referenced class libcore.icu.ICU
Note: android.support.v4.text.ICUCompatIcs: can't find dynamically referenced class libcore.icu.ICU
Note: android.support.v7.widget.DrawableUtils: can't find dynamically referenced class android.graphics.Insets
Note: android.support.v8.renderscript.RenderScript: can't find dynamically referenced class android.os.SystemProperties
Note: android.support.v8.renderscript.RenderScript: can't find dynamically referenced class android.renderscript.RenderScript
Note: android.support.v8.renderscript.RenderScript: can't find dynamically referenced class dalvik.system.VMRuntime
Note: com.google.android.gms.maps.internal.zzy: can't find dynamically referenced class com.google.android.gms.maps.internal.CreatorImpl
Note: com.google.gson.internal.UnsafeAllocator: can't find dynamically referenced class sun.misc.Unsafe
Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class com.android.org.conscrypt.OpenSSLSocketImpl
Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl
Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class android.net.TrafficStats
Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class android.net.Network
Note: com.twitter.sdk.android.core.DefaultClient: can't find dynamically referenced class com.squareup.okhttp.OkUrlFactory
Note: retrofit.Platform: can't find dynamically referenced class android.os.Build
Note: retrofit.Platform: can't find dynamically referenced class com.squareup.okhttp.OkUrlFactory
Note: retrofit.Platform: can't find dynamically referenced class rx.Observable
Note: android.support.multidex.MultiDexExtractor accesses a method 'apply()' dynamically
      Maybe this is program method 'com.radioafrica.music.utils.RemoteControlClientCompat$MetadataEditorCompat { void apply(); }'
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'icon' dynamically
      Maybe this is program field 'android.support.design.R$attr { int icon; }'
      Maybe this is program field 'android.support.design.R$id { int icon; }'
      Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { int icon; }'
      Maybe this is program field 'android.support.v7.appcompat.R$attr { int icon; }'
      Maybe this is program field 'android.support.v7.appcompat.R$id { int icon; }'
      Maybe this is program field 'com.digits.sdk.android.R$attr { int icon; }'
      Maybe this is program field 'com.digits.sdk.android.R$id { int icon; }'
      Maybe this is program field 'com.radioafrica.music.R$attr { int icon; }'
      Maybe this is program field 'com.radioafrica.music.R$id { int icon; }'
      Maybe this is program field 'com.radioafrica.music.adapter.DrawerAdapter$ViewHolder { android.widget.ImageView icon; }'
      Maybe this is program field 'com.radioafrica.music.object.DrawerItem { int icon; }'
      Maybe this is program field 'com.twitter.sdk.android.R$attr { int icon; }'
      Maybe this is program field 'com.twitter.sdk.android.R$id { int icon; }'
      Maybe this is program field 'io.fabric.sdk.android.services.settings.AppRequestData { io.fabric.sdk.android.services.settings.IconRequest icon; }'
      Maybe this is program field 'io.fabric.sdk.android.services.settings.AppSettingsData { io.fabric.sdk.android.services.settings.AppIconSettingsData icon; }'
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'title' dynamically
      Maybe this is program field 'android.support.design.R$attr { int title; }'
      Maybe this is program field 'android.support.design.R$id { int title; }'
      Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { java.lang.CharSequence title; }'
      Maybe this is program field 'android.support.v7.appcompat.R$attr { int title; }'
      Maybe this is program field 'android.support.v7.appcompat.R$id { int title; }'
      Maybe this is program field 'com.digits.sdk.android.R$attr { int title; }'
      Maybe this is program field 'com.digits.sdk.android.R$id { int title; }'
      Maybe this is program field 'com.facebook.share.internal.VideoUploader$UploadContext { java.lang.String title; }'
      Maybe this is program field 'com.facebook.share.model.GameRequestContent { java.lang.String title; }'
      Maybe this is program field 'com.facebook.share.model.GameRequestContent$Builder { java.lang.String title; }'
      Maybe this is program field 'com.radioafrica.music.R$attr { int title; }'
      Maybe this is program field 'com.radioafrica.music.R$id { int title; }'
      Maybe this is program field 'com.radioafrica.music.activity.AllPlaylists { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.ArtistPage { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.CollectionTracks { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.MusicPlayer { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.Parent { java.lang.CharSequence title; }'
      Maybe this is program field 'com.radioafrica.music.activity.PlaylistTracks { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.SearchActivity { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.StationList { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.activity.TracksByGenre { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.adapter.DiscoverAdapter$ViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.adapter.DrawerAdapter$ViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.adapter.MainCollectionTracksAdapter$ViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.adapter.PlaylistTracksAdapter$ViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.adapter.TrendingPlaylistsAdapter$ViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.fragment.CurrentPlaylist { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.object.DrawerItem { java.lang.String title; }'
      Maybe this is program field 'com.radioafrica.music.object.Station { java.lang.String title; }'
      Maybe this is program field 'com.radioafrica.music.object.Track { java.lang.String title; }'
      Maybe this is program field 'com.radioafrica.music.view.CollectionsViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.view.CurrentPlaylistViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.radioafrica.music.view.PlaylistTracksViewHolder { android.widget.TextView title; }'
      Maybe this is program field 'com.twitter.sdk.android.R$attr { int title; }'
      Maybe this is program field 'com.twitter.sdk.android.R$id { int title; }'
      Maybe this is program field 'io.fabric.sdk.android.services.settings.PromptSettingsData { java.lang.String title; }'
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'actionIntent' dynamically
      Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { android.app.PendingIntent actionIntent; }'
Note: android.support.v4.text.ICUCompatApi23 accesses a method 'addLikelySubtags(java.util.Locale)' dynamically
      Maybe this is program method 'android.support.v4.text.ICUCompatIcs { java.lang.String addLikelySubtags(java.util.Locale); }'
Note: android.support.v4.text.ICUCompatIcs accesses a method 'getScript(java.lang.String)' dynamically
      Maybe this is program method 'android.support.v4.text.ICUCompatIcs { java.lang.String getScript(java.lang.String); }'
Note: android.support.v4.text.ICUCompatIcs accesses a method 'addLikelySubtags(java.lang.String)' dynamically
Note: android.support.v7.widget.DrawableUtils accesses a method 'getOpticalInsets()' dynamically
Note: android.support.v7.widget.ViewUtils accesses a method 'makeOptionalFitsSystemWindows()' dynamically
Note: android.support.v8.renderscript.RenderScript accesses a declared method 'getMinorID()' dynamically
Note: android.support.v8.renderscript.RenderScript accesses a declared method 'getMinorVersion()' dynamically
Note: android.support.v8.renderscript.RenderScript accesses a declared method 'getRuntime()' dynamically
Note: bolts.MeasurementEvent accesses a method 'getInstance(android.content.Context)' dynamically
      Maybe this is program method 'android.support.v4.content.LocalBroadcastManager { android.support.v4.content.LocalBroadcastManager getInstance(android.content.Context); }'
      Maybe this is program method 'android.support.v4.hardware.display.DisplayManagerCompat { android.support.v4.hardware.display.DisplayManagerCompat getInstance(android.content.Context); }'
      Maybe this is program method 'com.facebook.internal.BoltsMeasurementEventListener { com.facebook.internal.BoltsMeasurementEventListener getInstance(android.content.Context); }'
      Maybe this is program method 'com.google.android.gms.analytics.GoogleAnalytics { com.google.android.gms.analytics.GoogleAnalytics getInstance(android.content.Context); }'
      Maybe this is program method 'com.google.android.gms.tagmanager.TagManager { com.google.android.gms.tagmanager.TagManager getInstance(android.content.Context); }'
Note: bolts.MeasurementEvent accesses a method 'sendBroadcast(android.content.Intent)' dynamically
      Maybe this is program method 'android.support.v4.content.LocalBroadcastManager { boolean sendBroadcast(android.content.Intent); }'
Note: com.digits.sdk.android.ActivityClassManagerFactory$ThemeAttributes accesses a field 'Theme' dynamically
      Maybe this is program field 'android.support.design.R$styleable { int[] Theme; }'
      Maybe this is program field 'android.support.v7.appcompat.R$styleable { int[] Theme; }'
      Maybe this is program field 'com.digits.sdk.android.R$styleable { int[] Theme; }'
      Maybe this is program field 'com.radioafrica.music.R$styleable { int[] Theme; }'
      Maybe this is program field 'com.twitter.sdk.android.R$styleable { int[] Theme; }'
Note: com.digits.sdk.android.ActivityClassManagerFactory$ThemeAttributes accesses a field 'Theme_windowActionBar' dynamically
      Maybe this is program field 'android.support.design.R$styleable { int Theme_windowActionBar; }'
      Maybe this is program field 'android.support.v7.appcompat.R$styleable { int Theme_windowActionBar; }'
      Maybe this is program field 'com.digits.sdk.android.R$styleable { int Theme_windowActionBar; }'
      Maybe this is program field 'com.radioafrica.music.R$styleable { int Theme_windowActionBar; }'
      Maybe this is program field 'com.twitter.sdk.android.R$styleable { int Theme_windowActionBar; }'
Note: com.google.android.exoplayer.util.Util accesses a declared method 'unexpectedEndOfInput()' dynamically
      Maybe this is program method 'com.squareup.okhttp.internal.http.HttpConnection$AbstractSource { void unexpectedEndOfInput(); }'
Note: com.google.android.gms.common.internal.DowngradeableSafeParcel accesses a field 'NULL' dynamically
      Maybe this is program field 'com.google.android.gms.common.internal.safeparcel.SafeParcelable { java.lang.String NULL; }'
      Maybe this is program field 'com.google.gson.stream.JsonToken { com.google.gson.stream.JsonToken NULL; }'
      Maybe this is program field 'io.fabric.sdk.android.services.common.QueueFile$Element { io.fabric.sdk.android.services.common.QueueFile$Element NULL; }'
Note: com.google.gson.internal.UnsafeAllocator accesses a declared field 'theUnsafe' dynamically
Note: com.google.gson.internal.UnsafeAllocator accesses a method 'allocateInstance(java.lang.Class)' dynamically
Note: com.radioafrica.music.utils.RemoteControlClientCompat$MetadataEditorCompat accesses a method 'clear()' dynamically         'io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue { void clear(); }'
      Maybe this is program method 'io.fabric.sdk.android.services.persistence.PersistenceStrategy { void clear(); }'
      Maybe this is program method 'io.fabric.sdk.android.services.persistence.PreferenceStoreStrategy { void clear(); }'
      Maybe this is program method 'okio.Buffer { void clear(); }'
      Maybe this is program method 'org.apache.http.client.CookieStore { void clear(); }'
      Maybe this is program method 'org.apache.http.client.CredentialsProvider { void clear(); }'
      Maybe this is program method 'org.apache.http.impl.client.BasicCookieStore { void clear(); }'
      Maybe this is program method 'org.apache.http.impl.client.BasicCredentialsProvider { void clear(); }'
      Maybe this is program method 'org.apache.http.message.HeaderGroup { void clear(); }'
      Maybe this is program method 'org.apache.http.params.BasicHttpParams { void clear(); }'
      Maybe this is program method 'org.apache.http.util.ByteArrayBuffer { void clear(); }'
      Maybe this is program method 'org.apache.http.util.CharArrayBuffer { void clear(); }'
Note: com.radioafrica.music.utils.RemoteControlClientCompat$MetadataEditorCompat accesses a method 'apply()' dynamically
      Maybe this is program method 'com.radioafrica.music.utils.RemoteControlClientCompat$MetadataEditorCompat { void apply(); }'
Note: com.squareup.okhttp.internal.Platform accesses a method 'tagSocket(java.net.Socket)' dynamically
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$BaseTrafficStatsCompatImpl { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$IcsTrafficStatsCompatImpl { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$TrafficStatsCompatImpl { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompatIcs { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'com.squareup.okhttp.internal.Platform { void tagSocket(java.net.Socket); }'
      Maybe this is program method 'com.squareup.okhttp.internal.Platform$Android { void tagSocket(java.net.Socket); }'
Note: com.squareup.okhttp.internal.Platform accesses a method 'untagSocket(java.net.Socket)' dynamically
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$BaseTrafficStatsCompatImpl { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$IcsTrafficStatsCompatImpl { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompat$TrafficStatsCompatImpl { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'android.support.v4.net.TrafficStatsCompatIcs { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'com.squareup.okhttp.internal.Platform { void untagSocket(java.net.Socket); }'
      Maybe this is program method 'com.squareup.okhttp.internal.Platform$Android { void untagSocket(java.net.Socket); }'
Note: com.squareup.okhttp.internal.Platform accesses a method 'get(javax.net.ssl.SSLSocket)' dynamically
Note: com.squareup.okhttp.internal.Platform accesses a method 'remove(javax.net.ssl.SSLSocket)' dynamically
Note: io.fabric.sdk.android.services.common.AdvertisingInfoReflectionStrategy accesses a method 'isGooglePlayServicesAvailable(android.content.Context)' dynamically
      Maybe this is program method 'com.google.android.gms.common.GoogleApiAvailability { int isGooglePlayServicesAvailable(android.content.Context); }'
      Maybe this is program method 'com.google.android.gms.common.GooglePlayServicesUtil { int isGooglePlayServicesAvailable(android.content.Context); }'
Note: io.fabric.sdk.android.services.common.AdvertisingInfoReflectionStrategy accesses a method 'getId()' dynamically
      Maybe this is program method 'android.net.http.DelegatingSSLSession { byte[] getId(); }'
      Maybe this is program method 'android.support.design.internal.NavigationMenuPresenter { int getId(); }'
      Maybe this is program method 'android.support.v4.app.BackStackRecord { int getId(); }'
      Maybe this is program method 'android.support.v4.app.Fragment { int getId(); }'
      Maybe this is program method 'android.support.v4.app.FragmentManager$BackStackEntry { int getId(); }'
      Maybe this is program method 'android.support.v4.content.Loader { int getId(); }'
      Maybe this is program method 'android.support.v4.view.accessibility.AccessibilityNodeInfoCompat$AccessibilityActionCompat { int getId(); }'
      Maybe this is program method 'android.support.v4.view.accessibility.AccessibilityWindowInfoCompat { int getId(); }'
      Maybe this is program method 'android.support.v7.view.menu.BaseMenuPresenter { int getId(); }'
      Maybe this is program method 'android.support.v7.view.menu.ListMenuPresenter { int getId(); }'
      Maybe this is program method 'android.support.v7.view.menu.MenuPopupHelper { int getId(); }'
      Maybe this is program method 'android.support.v7.view.menu.MenuPresenter { int getId(); }'
      Maybe this is program method 'android.support.v7.widget.Toolbar$ExpandedActionViewMenuPresenter { int getId(); }'
      Maybe this is program method 'com.facebook.GraphRequestBatch { java.lang.String getId(); }'
      Maybe this is program method 'com.facebook.Profile { java.lang.String getId(); }'
      Maybe this is program method 'com.facebook.share.widget.CreateAppGroupDialog$Result { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.exoplayer.text.ttml.TtmlStyle { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.ads.identifier.AdvertisingIdClient$Info { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.analytics.internal.Command { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.auth.api.signin.GoogleSignInAccount { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.dynamic.zzb { int getId(); }'
      Maybe this is program method 'com.google.android.gms.dynamic.zzc { int getId(); }'
      Maybe this is program method 'com.google.android.gms.dynamic.zzc$zza$zza { int getId(); }'
      Maybe this is program method 'com.google.android.gms.dynamic.zzh { int getId(); }'
      Maybe this is program method 'com.google.android.gms.internal.zzav { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.internal.zzav$zza$zza { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.internal.zzqi { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.location.places.Place { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.location.places.internal.PlaceImpl { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.location.places.internal.zzs { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.maps.model.Circle { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.maps.model.GroundOverlay { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.maps.model.Marker { java.lang.String getId(); }'
      Maybe this is program method 'com.google.android.gms.maps.model.Polygon { java.lang.String getId(); }'
      Maybe this is program method 
      Maybe this is program method 'io.fabric.sdk.android.services.common.IdManager { java.lang.Boolean isLimitAdTrackingEnabled(); }'
Note: io.fabric.sdk.android.services.common.AdvertisingInfoReflectionStrategy accesses a method 'getAdvertisingIdInfo(android.content.Context)' dynamically
      Maybe this is program method 'com.google.android.gms.ads.identifier.AdvertisingIdClient { com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context); }'
Note: retrofit.RestMethodInfo accesses a method 'value()' dynamically
      Maybe this is program method 'android.support.annotation.IntDef { long[] value(); }'
      Maybe this is program method 'android.support.annotation.RequiresPermission { java.lang.String value(); }'
      Maybe this is program method 'android.support.annotation.RequiresPermission$Read { android.support.annotation.RequiresPermission value(); }'
      Maybe this is program method 'android.support.annotation.RequiresPermission$Write { android.support.annotation.RequiresPermission value(); }'
      Maybe this is program method 'android.support.annotation.Size { long value(); }'
      Maybe this is program method 'android.support.annotation.StringDef { java.lang.String[] value(); }'
      Maybe this is program method 'android.support.design.widget.CoordinatorLayout$DefaultBehavior { java.lang.Class value(); }'
      Maybe this is program method 'com.google.gson.annotations.SerializedName { java.lang.String value(); }'
      Maybe this is program method 'com.google.gson.annotations.Since { double value(); }'
      Maybe this is program method 'com.google.gson.annotations.Until { double value(); }'
      Maybe this is program method 'com.parse.ParseClassName { java.lang.String value(); }'
      Maybe this is program method 'io.fabric.sdk.android.services.concurrency.DependsOn { java.lang.Class[] value(); }'
      Maybe this is program method 'retrofit.http.DELETE { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.EncodedPath { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.EncodedQuery { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Field { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.GET { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.HEAD { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Header { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Headers { java.lang.String[] value(); }'
      Maybe this is program method 'retrofit.http.PATCH { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.POST { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.PUT { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Part { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Path { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.Query { java.lang.String value(); }'
      Maybe this is program method 'retrofit.http.RestMethod { java.lang.String value(); }'
Note: the configuration refers to the unknown method 'void attachBaseContext(android.content.Context)' in class 'com.radioafrica.music.Music'
Note: there were 1 references to unknown class members.
      You should check your configuration for typos.
Note: there were 13 classes trying to access annotations using reflection.
      You should consider keeping the annotation attributes
      (using '-keepattributes *Annotation*').
      (http://proguard.sourceforge.net/manual/troubleshooting.html#attributes)
Note: there were 22 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 2 classes trying to access enclosing classes using reflection.
      You should consider keeping the inner classes attributes
      (using '-keepattributes InnerClasses').
      (http://proguard.sourceforge.net/manual/troubleshooting.html#attributes)
Note: there were 17 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)
Note: there were 31 accesses to class members by means of introspection.
      You should consider explicitly keeping the mentioned class members
      (using '-keep' or '-keepclassmembers').
      (http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclassmember)
Note: you're ignoring all warnings! 

因此,构建时间比平时长3倍。有没有办法摆脱这些消息并减少构建项目所需的时间?

0 个答案:

没有答案