c# - 在 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);
}
}
请给出一些解决此问题的建议。
解决方案
感谢你的回复。但我得到了解决方案。在这里,我不想使用任何其他库来实现这一点。
我的工作解决方案如下:
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"));
}
}
这个解决方案对我有用。
推荐阅读
- regex - 根据 Postgres 中的分隔符替换括号并将列拆分为多行
- docker - docker-compose postgresql docker-entrypoint-initdb.sh 不工作
- angular - Angular:HttpInterceptor 对特定情况有不同的处理
- java - 使用 JpaRepository 同时保存组合对象
- python - 使用 NorthPolarStereo 绘制带有 cartopy 的网格数据
- ionic-framework - Ionicons 从 v4 升级到 v5 导致不显示任何图标
- java - 如何打开选项卡的子选项卡以在 selenium 中进行测试
- python - 池对象不能在进程之间传递或腌制
- php - 教义 3 合并替代方案
- excel - VBA Excel Msgbox If 语句用于操作