我不知道为什么会这样,我已经尝试了一切.每次更新应用程序时,主屏幕上的以前的快捷方式都会消失.
这是我完整的应用清单:
<?xml version="1.0" enCoding="utf-8"?><manifest xmlns:androID="http://schemas.androID.com/apk/res/androID" package="com.SpaceMonkey.Boats" androID:versionCode="161" androID:versionname="1.6.1"> <uses-sdk androID:minSdkVersion="15" androID:targetSdkVersion="21" /> <application androID:label="Boats" androID:icon="@drawable/playstore"></application> <uses-permission androID:name="androID.permission.INTERNET" /> <uses-permission androID:name="androID.permission.ACCESS_NETWORK_STATE" /> <uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" /></manifest>
我的主要活动是:
[Activity (Label = "Boats", Icon = "@drawable/playstore", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.OrIEntation)] public class MainActivity : global::Xamarin.Forms.Platform.AndroID.FormsApplicationActivity
我更新时唯一更改的是清单中的versionCode和versionname,绝对没有其他更改.
我在这里做错了什么?
编辑:我开始认为Xamarin在后台生成一个新的应用程序清单是一个问题,我不确定如何检查.
编辑:我刚刚测试了一个不使用Xamarin.Forms的AndroID(Xamarin)应用程序,它没有这个问题.我的怀疑证实了这与Xamarin.Forms有关.
解决方法:
就我而言,此问题是通过更改AndroID应用程序项目的AssemblyInfo.cs的AssemblyVersion触发的.
此问题是由Xamarin.AndroID 5.0和更高版本(不是Xamarin.Forms)引起的.如in the release documentation here所述:
With the 5.0 release, the default package names for AndroID Callable
Wrappers will be based on the MD5SUM of the assembly-qualifIEd
name of the type being exported.
AssemblyVersion是程序集限定名称的一部分,任何版本更改都会创建新的MD5哈希,从而创建新的默认程序包名称. (了解有关the assembly qualified named here的更多信息)
应用程序快捷方式使用默认程序包名称启动您的应用程序,因此每次更新都会使该快捷方式无效,系统将其删除.
修复:请勿在您的AndroID项目中更改AssemblyVersion或任何其他更改程序集合格名称的 *** 作.
总结以上是内存溢出为你收集整理的android-应用程序快捷方式在每次更新后都会消失,Manifest怎么了?全部内容,希望文章能够帮你解决android-应用程序快捷方式在每次更新后都会消失,Manifest怎么了?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)