dotnet / android

.NET for Android provides open-source bindings of the Android SDK for use with .NET managed languages such as C#
MIT License
1.93k stars 531 forks source link

VS2019 16.3.0 Preview 4.0 Compiler warnings about no debug symbols when converting app to use androidX. #3662

Closed gmck closed 5 years ago

gmck commented 5 years ago

When building a release build I get the following bunch of warnings. The apk runs fine.

Task "Exec" Task Parameter:Command="C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\MSBuild\Xamarin\Android\mono-symbolicate" store-symbols "bin\Release\com.companyname.navxapp.apk.mSYM" "obj\Release\90\android/assets" "C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\MSBuild\Xamarin\Android\mono-symbolicate" store-symbols "bin\Release\com.companyname.navxapp.apk.mSYM" "obj\Release\90\android/assets" Directory obj\Release\90\android/assets contains Java.Interop.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains mscorlib.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains System.Core.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains System.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains System.Runtime.Serialization.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Annotation.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.AppCompat.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Arch.Core.Common.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Arch.Core.Runtime.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.AsyncLayoutInflater.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Browser.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.CardView.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Collection.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.ConstraintLayout.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.ConstraintLayout.Solver.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.CoordinatorLayout.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Core.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.CursorAdapter.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.CustomView.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.DocumentFile.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.DrawerLayout.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Fragment.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Interpolator.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Legacy.Support.Core.UI.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Legacy.Support.Core.Utils.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Lifecycle.Common.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Lifecycle.LiveData.Core.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Lifecycle.LiveData.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Lifecycle.Runtime.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Lifecycle.ViewModel.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Loader.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.LocalBroadcastManager.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Print.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.RecyclerView.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.SlidingPaneLayout.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.SwipeRefreshLayout.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.Transition.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.VectorDrawable.Animated.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.VectorDrawable.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.VersionedParcelable.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.AndroidX.ViewPager.dll but no debug symbols file was found. Directory obj\Release\90\android/assets contains Xamarin.Google.Android.Material.dll but no debug symbols file was found. Done executing task "Exec".

dellis1972 commented 5 years ago

@gmck what is the value for DebugSymbols in your csproj for your Release configuration?

gmck commented 5 years ago

@dellis1972 false. Want me to try it as true?

dellis1972 commented 5 years ago

Ok to try setting DebugSymbols = True and DebugType = PdbOnly (or Portable) in your release config and see if that helps.

dellis1972 commented 5 years ago

Actually allot of those warnings are related to System files or Nuget Packages. I my local tests I see I have pdf files for things like

 Xamarin.Forms.Platform.Android.pdb
 Xamarin.Forms.Platform.Android.dll
HelloForms.dll
HelloForms.pdb
Mono.Android.dll
Mono.Android.pdb

but not for

System.dll
Xamarin.Android.Arch.Core.Common.dll

I'll check to see if we ship the pdf files for System assemblies, and will check with the components team to see if they ship with symbols too.

Otherwise at the moment this is a normal set of warnings.

gmck commented 5 years ago

@dellis1972 , now on 16.4.0 Prev 1.0 with

<DebugSymbols>false</DebugSymbols>
<DebugType>pdbonly</DebugType> 

The warnings have gone away. However, it won't build with <AotAssemblies>true</AotAssemblies> or <AndroidEnableProfiledAot>true</AndroidEnableProfiledAot>

Will report that as a separate problem.

dellis1972 commented 5 years ago

This should be fixed via https://github.com/xamarin/xamarin-android/pull/3624