如何以 xamarin 形式获取 android 和 IOS 设备令牌?
Posted
技术标签:
【中文标题】如何以 xamarin 形式获取 android 和 IOS 设备令牌?【英文标题】:How to get android and IOS device token in xamarin forms? 【发布时间】:2017-09-07 21:29:10 【问题描述】:我需要这两个令牌...我正在使用 PushNotification 插件...我知道它返回令牌...但我认为文档非常糟糕...我不需要显示通知...我只需要令牌......只有它 有人能救我吗???我真的需要它。我需要在应用程序开发人员中进行一些配置吗? 我已经获得了 android 的发件人 ID,并且我在两个中都初始化了插件:AppDelegate 和 MainActivity 帮助 PLEEEAAAAAAASE
我在 pcl 中的课
using PushNotification.Plugin;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;
using PushNotification.Plugin.Abstractions;
namespace neoFly_Montana
public class PushNot : IPushNotificationListener
public void OnError(string message, DeviceType deviceType)
throw new NotImplementedException();
public void OnMessage(JObject values, DeviceType deviceType)
throw new NotImplementedException();
public void OnRegistered(string token, DeviceType deviceType)
throw new NotImplementedException();
public void OnUnregistered(DeviceType deviceType)
throw new NotImplementedException();
public bool ShouldShowNotification()
throw new NotImplementedException();
【问题讨论】:
嗨乔伊斯!我不推荐使用 PushNotificationPlugin。您不会从抽象中获得太多收益,并且很容易添加代码来处理没有它的推送通知。更好的工具是 Mobile Center Push SDK,mobile.azure.com。 Mobile Center 让管理推送通知变得超级简单。 【参考方案1】:一旦设备在 APNS 或 GCM/FCM 中注册,Google 和 Apple 都会通过 OnRegistered
方法向您发送令牌。
在OnRegistered
中,您可以添加逻辑来保存令牌。
public void OnRegistered(string token, DeviceType deviceType)
//use token here
【讨论】:
是的..我知道...我正在使用 CrossPushNotification.Current.Register();为了尝试调用它...但我有一个未处理的异常...我不知道原因 这不好玩。编辑问题并发布错误/堆栈跟踪,我会看看! 在哪里可以看到未处理异常的原因?我的 try catch 没有得到它... 我认为问题可能出在 android 发件人 id...但我只需要确认它 在ios中没有异常,当应用程序初始化时有一条消息允许推送通知......但是,它也不调用onregistered方法......以上是关于如何以 xamarin 形式获取 android 和 IOS 设备令牌?的主要内容,如果未能解决你的问题,请参考以下文章
如何以 xamarin 形式将一个内容页面从客户端项目(IOS/Android)导航到另一个内容页面?