I received a mail from Google warning me about "REQUEST_INSTALL_PACKAGES" permission. I understand the warning, but I can't find which dependency brings this permission.
I found the "REQUEST_INSTALL_PACKAGES" permission in the merged manifest, but it is not added by my code, so I guess it comes from a dependency but I can't find which one.
Do you know how I can find which dependency brings this permission ?
For your information, I'm on Xamarin.Android 11 and Xamarin.Forms 4.8.
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="FastAndroidCamera" version="2.0.0" targetFramework="monoandroid81" />
<package id="Forms9Patch" version="1.5.0.9" targetFramework="monoandroid81" />
<package id="LiteDB" version="5.0.9" targetFramework="monoandroid81" />
<package id="Microsoft.AppCenter" version="1.6.0" targetFramework="monoandroid81" />
<package id="Microsoft.AppCenter.Analytics" version="1.6.0" targetFramework="monoandroid81" />
<package id="Microsoft.AppCenter.Crashes" version="1.6.0" targetFramework="monoandroid81" />
<package id="Microsoft.AppCenter.Distribute" version="1.6.0" targetFramework="monoandroid81" />
<package id="Microsoft.AspNetCore.Connections.Abstractions" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.Http.Connections.Client" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.Http.Connections.Common" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.Http.Features" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.SignalR.Client" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.SignalR.Client.Core" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.SignalR.Common" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.AspNetCore.SignalR.Protocols.Json" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="6.0.0" targetFramework="monoandroid11.0" />
<package id="Microsoft.CSharp" version="4.5.0" targetFramework="monoandroid81" />
<package id="Microsoft.Extensions.Configuration" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Configuration.Abstractions" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Configuration.Binder" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.DependencyInjection" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="5.0.0" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Logging" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Logging.Abstractions" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Options" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Extensions.Primitives" version="3.1.20" targetFramework="monoandroid11.0" />
<package id="Microsoft.Identity.Client" version="4.29.0" targetFramework="monoandroid81" />
<package id="Microsoft.IdentityModel.Clients.ActiveDirectory" version="3.19.8" targetFramework="monoandroid81" />
<package id="Microsoft.NETCore.Platforms" version="1.1.1" targetFramework="monoandroid81" />
<package id="Microsoft.NETCore.Targets" version="1.1.3" targetFramework="monoandroid81" />
<package id="Microsoft.Rest.ClientRuntime" version="2.3.13" targetFramework="monoandroid81" />
<package id="Microsoft.VisualStudio.Threading" version="17.1.46" targetFramework="monoandroid11.0" />
<package id="Microsoft.VisualStudio.Threading.Analyzers" version="17.1.46" targetFramework="monoandroid11.0" developmentDependency="true" />
<package id="Microsoft.VisualStudio.Validation" version="17.0.43" targetFramework="monoandroid11.0" />
<package id="Microsoft.Win32.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="Microsoft.Win32.Registry" version="5.0.0" targetFramework="monoandroid11.0" />
<package id="Mvvmicro" version="0.10.17" targetFramework="monoandroid11.0" />
<package id="Navigation.Abstractions" version="2.4.0-unstable0002" targetFramework="monoandroid81" />
<package id="NETStandard.Library" version="2.0.1" targetFramework="monoandroid81" />
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="monoandroid81" />
<package id="NLog" version="4.5.4" targetFramework="monoandroid81" />
<package id="NLog.Config" version="4.5.4" targetFramework="monoandroid81" />
<package id="NLog.Schema" version="4.5.4" targetFramework="monoandroid81" />
<package id="Plugin.CurrentActivity" version="2.1.0.2" targetFramework="monoandroid81" />
<package id="Plugin.Permissions" version="3.0.0.12" targetFramework="monoandroid81" />
<package id="Rg.Plugins.Popup" version="1.1.5.188" targetFramework="monoandroid81" />
<package id="SkiaSharp" version="2.80.2" targetFramework="monoandroid11.0" />
<package id="SkiaSharp.Svg" version="1.59.1" targetFramework="monoandroid81" />
<package id="SkiaSharp.Views" version="2.80.2" targetFramework="monoandroid11.0" />
<package id="SkiaSharp.Views.Forms" version="2.80.2" targetFramework="monoandroid11.0" />
<package id="StyleCop.MSBuild" version="6.0.0-beta04" targetFramework="monoandroid81" developmentDependency="true" />
<package id="System.AppContext" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Buffers" version="4.5.1" targetFramework="monoandroid11.0" />
<package id="System.Collections" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Collections.Concurrent" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.ComponentModel.Annotations" version="4.7.0" targetFramework="monoandroid11.0" />
<package id="System.ComponentModel.TypeConverter" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Console" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Diagnostics.Process" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Diagnostics.Tools" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Diagnostics.Tracing" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Dynamic.Runtime" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Globalization" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Globalization.Calendars" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO.Compression" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO.Compression.ZipFile" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO.FileSystem" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO.FileSystem.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.IO.Pipelines" version="4.7.4" targetFramework="monoandroid11.0" />
<package id="System.Linq" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Linq.Expressions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Memory" version="4.5.2" targetFramework="monoandroid11.0" />
<package id="System.Net.Http" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Net.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Net.Sockets" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="monoandroid81" />
<package id="System.ObjectModel" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Private.Uri" version="4.3.2" targetFramework="monoandroid81" />
<package id="System.Reflection" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Reflection.Extensions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Reflection.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Reflection.TypeExtensions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="monoandroid11.0" />
<package id="System.Runtime.Extensions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.Handles" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.InteropServices" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.Numerics" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.Serialization.Formatters" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.Serialization.Json" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Runtime.Serialization.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Security.AccessControl" version="5.0.0" targetFramework="monoandroid11.0" />
<package id="System.Security.Cryptography.Algorithms" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Security.Cryptography.X509Certificates" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Security.Principal.Windows" version="5.0.0" targetFramework="monoandroid11.0" />
<package id="System.Security.SecureString" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Text.Encoding" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Text.Encoding.Extensions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Text.Encodings.Web" version="4.7.1" targetFramework="monoandroid11.0" />
<package id="System.Text.Json" version="4.7.2" targetFramework="monoandroid11.0" />
<package id="System.Text.RegularExpressions" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Threading" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Threading.Channels" version="4.7.1" targetFramework="monoandroid11.0" />
<package id="System.Threading.Tasks" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="monoandroid11.0" />
<package id="System.Threading.Timer" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Xml.ReaderWriter" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Xml.XDocument" version="4.3.0" targetFramework="monoandroid81" />
<package id="System.Xml.XmlDocument" version="4.3.0" targetFramework="monoandroid81" />
<package id="Toasts.Forms.Plugin" version="3.3.2" targetFramework="monoandroid81" />
<package id="Xam.Forms.QRCode" version="0.5.0" targetFramework="monoandroid81" />
<package id="Xam.Plugin.Media" version="5.0.1" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Arch.Core.Common" version="1.1.1.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Arch.Lifecycle.Common" version="1.1.1.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Arch.Lifecycle.Runtime" version="1.1.1.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Animated.Vector.Drawable" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Annotations" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Compat" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Core.UI" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Core.Utils" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.CustomTabs" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Design" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Fragment" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Media.Compat" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Transition" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v4" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v7.AppCompat" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v7.CardView" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v7.MediaRouter" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v7.Palette" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.v7.RecyclerView" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.Android.Support.Vector.Drawable" version="28.0.0.3" targetFramework="monoandroid81" />
<package id="Xamarin.AndroidX.Activity" version="1.2.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Annotation" version="1.2.0" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Annotation.Experimental" version="1.0.0.9" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.AppCompat" version="1.2.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.AppCompat.AppCompatResources" version="1.3.0" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.AppCompat.Resources" version="1.1.0" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Arch.Core.Common" version="2.1.0.8" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Arch.Core.Runtime" version="2.1.0.8" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.AsyncLayoutInflater" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Browser" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.CardView" version="1.0.0.8" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Collection" version="1.1.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.ConstraintLayout" version="2.0.4.2" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.ConstraintLayout.Solver" version="2.0.4.2" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.CoordinatorLayout" version="1.1.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Core" version="1.5.0" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.CursorAdapter" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.CustomView" version="1.1.0.6" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.DocumentFile" version="1.0.1.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.DrawerLayout" version="1.1.1.2" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.DynamicAnimation" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Fragment" version="1.3.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Interpolator" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Legacy.Support.Core.UI" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Legacy.Support.Core.Utils" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Legacy.Support.V4" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.Common" version="2.3.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.LiveData" version="2.1.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.LiveData.Core" version="2.3.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.Runtime" version="2.3.1.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.ViewModel" version="2.3.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Lifecycle.ViewModelSavedState" version="2.3.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Loader" version="1.1.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.LocalBroadcastManager" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Media" version="1.3.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.MediaRouter" version="1.2.4" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Migration" version="1.0.8" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.MultiDex" version="2.0.1.5" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Palette" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Print" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.RecyclerView" version="1.1.0.8" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.SavedState" version="1.1.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.SlidingPaneLayout" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.SwipeRefreshLayout" version="1.0.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.Transition" version="1.4.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.VectorDrawable" version="1.1.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.VectorDrawable.Animated" version="1.1.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.VersionedParcelable" version="1.1.1.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.ViewPager" version="1.0.0.7" targetFramework="monoandroid11.0" />
<package id="Xamarin.AndroidX.ViewPager2" version="1.0.0.9" targetFramework="monoandroid11.0" />
<package id="Xamarin.Build.Download" version="0.4.11" targetFramework="monoandroid81" />
<package id="Xamarin.Controls.SignaturePad" version="2.3.0" targetFramework="monoandroid81" />
<package id="Xamarin.Controls.SignaturePad.Forms" version="2.3.0" targetFramework="monoandroid81" />
<package id="Xamarin.Essentials" version="1.5.3.2" targetFramework="monoandroid81" />
<package id="Xamarin.FFImageLoading" version="2.4.5.922" targetFramework="monoandroid81" />
<package id="Xamarin.FFImageLoading.Forms" version="2.4.5.922" targetFramework="monoandroid81" />
<package id="Xamarin.FFImageLoading.Svg" version="2.4.5.922" targetFramework="monoandroid81" />
<package id="Xamarin.FFImageLoading.Svg.Forms" version="2.4.5.922" targetFramework="monoandroid81" />
<package id="Xamarin.Firebase.Common" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.Firebase.Iid" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.Firebase.Messaging" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.Forms" version="4.8.0.1821" targetFramework="monoandroid11.0" />
<package id="Xamarin.Google.Android.Material" version="1.3.0.1" targetFramework="monoandroid11.0" />
<package id="Xamarin.Google.Guava.ListenableFuture" version="1.0.0.2" targetFramework="monoandroid11.0" />
<package id="Xamarin.GooglePlayServices.Base" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.GooglePlayServices.Basement" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.GooglePlayServices.Location" version="60.1142.1" targetFramework="monoandroid81" />
<package id="Xamarin.GooglePlayServices.Tasks" version="60.1142.1" targetFramework="monoandroid81" />
<package id="ZXing.Net" version="0.16.4" targetFramework="monoandroid81" />
<package id="ZXing.Net.Mobile" version="2.4.1" targetFramework="monoandroid81" />
<package id="ZXing.Net.Mobile.Forms" version="2.4.1" targetFramework="monoandroid81" />
</packages>
Thanks in advance
CodePudding user response:
It's hard to find which packge request this permission in your project because there are too many packages.
But if you don't want to requeset this permission for your app, you can use the tools:node="remove"
to remove the permission which is requested by the third party packages. Such as:
<manifest ... xmlns:tools="http://schemas.android.com/tools">
...
<uses-permission android:name="android.permission.INSTALL_PACKAGES" tools:node="remove" />
....
</manifest>
CodePudding user response:
What Android permissions are required?
Depending on the services you use, the following permissions are required:
All services: INTERNET, ACCESS_NETWORK_STATE
Distribute: REQUEST_INSTALL_PACKAGES, DOWNLOAD_WITHOUT_NOTIFICATION
Microsoft.AppCenter.Distribute is required that permission.