c# - 如何更改默认图标带来 OneSignal 从 Xamarin.Forms 发布帖子?
问题描述
我已经做了一个 post 方法来咨询 OneSignal API Rest,当订单被接受时,一个通知会从下订单的设备发送给用户,这是不起作用的代码行,它在没有small_icon
,large_icon
和android_accent_color
代码:
public static void PostNotification(string idPush)
{
var request = WebRequest.Create(AppSettings.OneSignalApi) as HttpWebRequest;
request.KeepAlive = true;
request.Method = "POST";
request.ContentType = "application/json; charset=utf-8";
request.Headers.Add("authorization", AppSettings.KeyPush);
byte[] byteArray = Encoding.UTF8.GetBytes("{"
+ $"\"app_id\": \"{AppSettings.PushIDApp}\","
+ "\"small_icon\": \"ic_stat_onesignal_default\","
+ "\"large_icon\": \"ic_onesignal_large_icon_default\","
+ "\"android_accent_color\": \"FFba3870\","
+ "\"contents\": {\"en\": \"Pedido Aceptado\"},"
+ $"\"include_player_ids\": [\"{idPush}\"]" +
"}");
string responseContent = null;
try
{
using (var writer = request.GetRequestStream())
{
writer.Write(byteArray, 0, byteArray.Length);
}
using (var response = request.GetResponse() as HttpWebResponse)
{
using (var reader = new StreamReader(response.GetResponseStream()))
{
responseContent = reader.ReadToEnd();
}
}
}
catch (WebException ex)
{
System.Diagnostics.Debug.WriteLine(ex.Message);
System.Diagnostics.Debug.WriteLine(new StreamReader(ex.Response.GetResponseStream()).ReadToEnd());
}
}
我有图标但它没有显示它们,它没有向我发送通知,只是删除了以下 3 个属性,我small_icon
不知道我这样做的方式是否会出错,我已经按照创建通知的文档。large_icon
android_accent_color
解决方案
推荐阅读
- node.js - 我使用 yarn add,nodeJS 告诉我整个文件夹的“找不到模块”
- python - 如何从流式推文中获取全文?
- python - 如何使用python计算重复行并比较excel中的两列值
- mysql - 如何在触发器操作中使用 WHEN 条件
- deployment - PhpStorm 项目中的多个内容根 - 可以合并部署吗?
- html - Django-ckeditor 的内容在管理页面中没有被设置为 html 样式
- r - 重新打印 capture.output(glimpse(df)) 看起来与 glimpse(df) 相同
- python - Python dataclasses.replace 不适用于 InitVar
- r - 如何遍历 R 中的每一行并查看是否满足更改日期格式的条件?
- angular - Angular - 路由更改时刷新或重新订阅服务