首页 > 解决方案 > 在 xamarin forms android 项目中使用依赖服务共享应用程序功能实现

问题描述

我正在 Xamarin 表单项目中实现共享应用程序功能。是的,有可用的库,但是库与 Xamarin 表单包的版本冲突,我已经完成了所有的工作,不希望出现任何问题,我想通过在 Android 中执行特定于平台的编码来使用依赖服务来实现和没有任何软件包的iOS。

在这里,我使用意图通过制作自定义渲染器来共享 Android 项目中的应用程序。但我收到错误。

public class ShareTheAppRenderer : IShareTheApp
{
    public void ShareApp()
    {
        var mainActivity = new MainActivity();
        Intent sendIntent = new Intent();
        sendIntent.SetAction(Intent.ActionSend);
        sendIntent.PutExtra(Intent.ExtraText, "Check out our app at: https://play.google.com/store/apps/details?id=");
        sendIntent.SetType("text/plain");
        mainActivity.StartActivity(sendIntent);
    }
}

请参阅随附的屏幕截图。

请给出一些解决此问题的建议。

标签: c#androidxamarinxamarin.formsxamarin.android

解决方案


感谢你的回复。但我得到了解决方案。在这里,我不想使用任何其他库来实现这一点。

我的工作解决方案如下:

public class ShareTheAppRenderer : IShareTheApp
{
    public void ShareApp()
    {
        var appPackageName = Forms.Context.PackageName;
        var myIntent = new Intent(Android.Content.Intent.ActionSend);
        myIntent.SetType("text/plain");
        myIntent.PutExtra(Intent.ExtraText, "Check out our app at: https://play.google.com/store/apps/details?id=" + appPackageName);
        Forms.Context.StartActivity(Intent.CreateChooser(myIntent, "Choose an App"));
    }
}

这个解决方案对我有用。


推荐阅读