从自己的服务器更新android应用[Android]

时间:2018-12-18 13:50:41

标签: android xamarin android-intent xamarin.forms xamarin.android

我正尝试在没有Google Play的情况下更新我的应用。我将apk文件放在公共服务器上,并成功下载了它。 之后,我打开此apk并尝试安装,但完成时出现名称冲突。是否可以替换apk本身?预先感谢!

            Intent intent = new Intent(Intent.ActionView);

            var uri = FileProvider.GetUriForFile(Application.Context, "com.test.app.provider", file);
            intent.SetDataAndType(uri, "application/vnd.android.package-archive");
            intent.SetFlags(ActivityFlags.NewTask);

            intent.AddFlags(ActivityFlags.GrantReadUriPermission);
            intent.AddFlags(ActivityFlags.GrantReadUriPermission);
            intent.AddFlags(ActivityFlags.GrantWriteUriPermission);
            intent.AddFlags(ActivityFlags.GrantPersistableUriPermission);

            Application.Context.StartActivity(intent);

1 个答案:

答案 0 :(得分:0)

您可以创建一个单独的应用程序,除了在服务器上检查应用程序的版本之外,什么都不做,并在需要时更新应用程序。 installer-app告诉您的应用停止,然后安装新版本并启动它。用户在安装过程中确实会弹出一个窗口,除非您使用设备制造商的签名密钥对您的应用程序进行了签名,或者您已经对设备进行了植根,否则您将无法从其他应用程序中完全自动安装该应用程序。

我以后可以发布一些代码,我现在不在自己的电脑上。