xamarin - Xamarin 闪亮推
问题描述
我正在尝试为我的 Xamarin 应用程序使用 Shiny Push,但在 Android 上没有调用 OnTokenChanged(在推送代表中)。它可以在 iOS 上找到。有没有人经历过这个?
我在启动时注册了代表
services.UsePush<PushDelegate>();
然后我调用 Push Manager 的 Request Access
var result = await _pushManager.RequestAccess();
结果返回了正确的可用状态,并且它在响应中也有一个设备令牌,但推送委托的 OnTokenChanged 没有运行。
Shiny 在我的 MainActivity 中注册(Shiny 2 版本)
[assembly: ShinyApplication(
ShinyStartupTypeName = "AddView.Mobile.AppStartUp",
XamarinFormsAppTypeName = "AddView.Mobile.App"
)]
namespace AddView.Mobile.Droid
{
[Activity(Label = "AddView", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true,
ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation,
ScreenOrientation = ScreenOrientation.Portrait)]
public partial class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
}
}
其他人有这个吗?有任何想法吗。
解决方案
IPushDelegate.OnTokenChanged 仅在令牌在 RequestAccess 之外更改时调用。这实际上只针对 firebase 实现触发。
推荐阅读
- html - 如何在 CSS 中使用 div 标签填充空格?(包括图片)
- visual-studio - 减少 Visual Studio 2019 中的日志和其他临时文件创建
- amazon-web-services - 添加带有 Internet 网关的公共子网和带有 NAT 的私有子网时,RDS 公共访问丢失
- powershell - 如何使用powershell将具有不同名称的文件从一个文件夹复制到另一个文件夹?
- mongodb - GraphQL Mutation 使用 Mongoose/MongodDB 更新用户关注者 - $set 为空错误
- angular - 在 Spring Boot 中应用安全性但在 Postman 中没有应用后,Anguar 中的 401 响应
- javascript - 如何在单击添加按钮时增加现有数组的长度
- javascript - 如何检查对象是否为空?
- python - 如何通过 python 修改 .properties 文件中的信息
- visual-studio - How to copy dll file from visual studio solution to specific location on drive