gpt4 book ai didi

android - 在 Xamarin Android 中实现电话调用服务

转载 作者:行者123 更新时间:2023-11-29 18:46:06 24 4
gpt4 key购买 nike

我是 Xamarin 的新手。我有一个 Xamarin Forms 应用程序,需要为 ios 和 android 实现电话服务。

这是我在 .net 共享项目下的界面:

using System;
using System.Collections.Generic;
using System.Text;

namespace CallMeMaybe.Services
{
public interface ICallService
{
void MakePhoneCall(string number);
}
}

这是 View 模型中的命令方法:

   private void OnCall(object s)
{
DependencyService.Get<ICallService>().MakePhoneCall(Convert.ToString(s));
}

这是我的Android Call Service,需要实现MakePhoneCall方法

using Android.App;
using Android.Content;
using CallMeMaybe.Droid.Services;
using CallMeMaybe.Services;
using Xamarin.Forms;

[assembly: Dependency(typeof(CallService))]
namespace CallMeMaybe.Droid.Services
{
[Activity(Label = "CallService")]
public class CallService : ICallService
{

public void MakePhoneCall(string number)
{

var uri = Android.Net.Uri.Parse("tel:" + number);
var intent = new Intent(Intent.ActionCall, uri);
//Start Activity here?

}
}
}

如何在我的 Android 方法中启动拨号 Activity ?这是一个服务类而不是 Activity 类,所以我没有扩展 Activity。

最佳答案

首先这个类不是activiry,所以你需要移除[Activity(Label = "CallService")]

    public void MakePhoneCall(string number)
{
var intent = new Intent(Intent.ActionCall, Android.Net.Uri.Parse(
"tel:" + Uri.EscapeDataString(phoneNumber)));
Android.App.Application.Context.StartActivity(intent);
}

此 Intent 将打开通话应用并开始通话

通过执行 StartActivity(intent),您可以命令 Android 打开 Calling App Activity 并开始通话

关于android - 在 Xamarin Android 中实现电话调用服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51853487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com