• 跳转至主导航
  • 跳到主要内容
  • 跳至主侧边栏
  • 跳转到页脚

科技丽拉

出血边缘,总是

  • 首页
  • 关于我们
  • 联系方式
  • 交易和优惠
Techlila 徽标
分享
分享
分享
Pin
708 分享
沃森情绪分析
下一步

使用 Watson Sentiment Analysis 构建智能且具有感知能力的 Android 应用程序

添加推送通知功能

科技丽拉 电话 Android

如何使用 IBM Bluemix 向 Android 项目添加推送通知功能

Prateek Prasad 的头像 普拉提克·普拉萨德
最后更新日期: March 30, 2019

编写移动软件是可以为您找到工作的最热门技能之一。 整个生态系统由iOS和Android两大平台驱动,确实是成为开发者的最佳时机。

假设您已经具备一定的编程经验,那么应用程序开发对您来说不会是压倒性的。 这确实将是一次学习体验,我从个人经验中讲到,学习在平台上构建可以让您的思维开启全新的思维方式。 因为现在您不仅要管理应用程序的前台和后台发生的事情,还要管理其不同的不可见状态,并确保它成为用户设备生态系统的“好公民”。

这篇文章是 TechLila 正在进行的系列文章的一部分,我们将关注如何通过花时间构建体验而不是思考已经优雅解决的问题来成为更好的开发人员(我会来只需一点点)。 但是请注意,这个系列 不适合初学者,我们很快就会为您准备好东西。 本系列的重点是帮助已经拥有相当多的 Android 专业知识的开发人员。

本文是我们将发布的系列文章中的第一篇,旨在帮助 Android 开发人员利用现有基础架构将关键的“引人入胜”的功能添加到他们的应用程序中,而不必担心从头开始构建它。

Android 上的推送通知

在第一个中,我们将专注于推送通知。 推送通知属于软件集成的参与范围。

好吧,假设您刚刚完成了下一个史诗般的应用程序的构建,它完全是杀手级的,并且您对它的未来非常乐观。 在最初的几天里,该应用程序运行良好。 稳定性是一流的,下载量不断增加,您无法关注指标。 但是很快您就会开始注意到应用程序使用中的一个非常奇怪的模式。 虽然它设法为自己吸引新用户,但它正在失去现有用户。 保留率每天都在下降。 你担心现在该怎么办,你认为人们真的会喜欢它。 但它只是没有解决。

如果您处于这种情况,那么这篇文章可能会为您提供帮助。 问题不在于您的应用程序。 这是用户的电话。 让我解释。 你的想法是一个杀手,如果你对它的可行性充满信心,那么你应该关心的就是解决保留问题。 所以是的,我是你的用户,我有一部典型的 Android 手机。 拥有不错的 32 GB 存储空间,感谢 Reliance Jio,提供了非常稳定的互联网连接。 我该怎么办? 我去探索外面有什么可供我消费。 在这个过程中,我只是用 100 多个应用程序阻塞了我的设备,虽然我真的很喜欢你的应用程序并且发现它很有趣,但老实说此时我已经忘记了它。 它仍然存在于我的手机上,但我只是在那里的所有其他应用程序中没有注意到它。

这里的问题是您的应用不够吸引人。 它只是提醒用户它就在他们的设备上等待他们使用它,并且在 Facebook 和 WhatsApp 等所有注意力异常的应用程序中不断用通知轰炸您的用户,除非它修复了您的应用程序,否则您的应用程序很可能会迷失在人群中参与问题。

如何向您的 Android 项目添加推送通知

推送通知是一种很好的解决问题的轻量级机制,本文将向您展示如何在您自己的项目中实现它。

我们将使用 IBM 的 Bluemix 用于将推送通知集成到我们的应用程序中。 有大量其他供应商可以为您提供一个 SDK 以集成到项目中并开始开发它。 但是,我之所以选择 Bluemix 而不是其他产品,有几个关键原因。

  • First Bluemix 提供了大量的功能,我可以将这些功能添加到现有项目中而零麻烦(推送通知恰好是这些产品中的一个)。 他们的控制台可以轻松管理所有集成。
  • 其次,如果您是初学者并尝试任何其他 SDK,您很可能会卡在某个地方(我确实遇到过)。 对于 Bluemix,情况几乎不是这样,因为理论文档和指南非常棒。
  • 选择 Bluemix 的第三个也是最重要的一个原因是,尽管它是一项付费服务​​,但它提供 30 天的试用期,因此您可以在决定使用他们的平台并投资之前试用他们的所有产品。 在投资之前测试一些东西总是一个好习惯。
  • 第四,这更像是布朗尼指向 IBM,开发人员对 IBM 作为一家公司有一种熟悉感和信任感。 他们在技术领域做了一些了不起的工作已经有一段时间了,他们很了解他们的东西,所以你可以毫无顾虑地跳槽

为了进一步学习本课程,我们首先需要确保我们都在同一页面上,因此在深入了解这篇文章之前,请确保您已注册 Bluemix(如果您还没有)并登录到控制台。

本文的重点是 Android,因此我假设您对为 Android 编写应用程序有一定的了解。 好的,让我们开始吧。

第 1 步:初始设置

在 Android Studio 中打开一个您想要集成推送通知的现有项目。 您也可以继续创建一个新项目来测试一下。 如果您要打开现有项目, 确保你切换到一个新的分支 在对您的项目进行任何添加之前。 完成此步骤后,构建项目并将其部署到您的手机/模拟器上。 这将证明一切都按预期进行,我们一切顺利。

第 2 步:检索您的 Firebase Cloud Messaging API 密钥

Bluemix 利用 Google Cloud Messaging 向您的应用程序发送下游推送通知。 通过接管您的 Firebase Cloud Messaging (GCM) 项目,您可以轻松地为您进行设置和配置。 前往 console.firebase.google.com,使用 Google 帐户登录,然后按照以下步骤操作

  • 创建一个新项目。
  • 给它一个名字。
  • 设置完成后,转到项目设置。
  • 单击云消息传递。
  • 复制 服务器 API 密钥 和 发件人ID 如下面的截图所示。
  • 完成上述步骤后,继续将 Firebase 添加到您的 Android 项目。 此步骤涉及输入项目的包名称和其他详细信息,然后下载“谷歌服务。JSON“ 文件中。
Firebase控制台

注意: 正确完成此步骤以确保接下来的步骤正常运行非常重要。 确保您的应用程序已配置并且“google-services.json”文件已放置在您的项目中。

第 1 步:注册应用

第一步 - 注册应用

第 2 步:下载配置文件

第 2 步:下载配置文件

第 3 步:添加 Firebase SDK

第 3 步:添加 Firebase SDK

确保你在这个阶段运行你的项目只是为了看看是否一切正常。 如果一切正常,则进行下一步。

步骤 3:配置 Bluemix 服务

  • 转到您的 Bluemix 控制台。
  • 打开您的 Bluemix 目录,然后单击您创建的 IBM Push Notifications for Bluemix 服务实例。
  • 单击管理,然后转到配置。
  • 选择手机。
  • 现在在此处输入您在上一步中刚刚复制的凭据。 更新 气相色谱仪/色谱仪 使用“推送凭据”选项卡 发件人 ID/项目编号 和 API密钥.
  • 点击保存。

第 4 步:发送推送!

  • 好了,我们快完成了。 在您的手机/模拟器上部署您的应用程序,然后转到您的控制台。
  • 选择发送通知。
  • 在此部分配置您的消息。
标签通知
  • 一切都完成后,点击 发送 然后转到您的设备。

根据他们的文档,Bluemix 为 Android 提供了一些额外的选项。 您可以广泛配置您的通知。 以下是选项(直接来自他们的文档):

  • 折叠键: 折叠键附加到通知。 如果多个通知在设备离线时使用相同的折叠键依次到达,它们将被折叠。 当设备上线时,它会接收来自 FCM/GCM 服务器的通知,并且只显示带有相同折叠键的最新通知。 如果未设置折叠键,则会存储新消息和旧消息以供将来传递。
  • 声音: 表示在收到通知时播放的声音片段。 支持默认或捆绑在应用程序中的声音资源的名称。
  • 图标: 指定要为通知显示的图标的名称。 确保您已将图标打包在 res/drawable 文件夹,与客户端应用程序。
  • 优先级: 指定用于为消息分配传递优先级的选项。
    • 优先权 high or max 将导致提示通知。

     

    • 优先权 low or default 不会在睡眠设备上打开网络连接。

     

    • 优先权 min 将是无声通知。
  • 能见度: 您可以选择将通知可见性选项设置为 public or private.
    • 新的 private 选项限制公众查看,如果您的设备通过 PIN 或图案确保安全,并且通知设置设为 隐藏敏感的通知内容. 当可见性设置为 private,以 redact 必须提到的领域。 仅在规定的内容 redact 字段将显示在设备上安全锁定的屏幕上。

     

    • 新的 public 选项将使通知可以自由阅读。
  • 生存时间: 该值以秒为单位设置。 如果未指定此参数,则 FCM/GCM 服务器会将消息存储四个星期并尝试传送。 有效期在四个星期后到期。 可能的值范围是 0 到 2,419,200 秒。
  • 空闲时延迟: 您可以将其设置为以下任一值:
    • True 如果设备空闲,则指示 FCM/GCM 服务器不发送通知。

     

    • False 即使设备空闲也能确保通知传递。
  • 同步: 通过将此选项设置为 true,您所有注册设备上的通知都是同步的。 如果具有用户名的用户在多台设备上安装了相同的应用程序,则在一台设备上阅读通知可确保删除其他设备中的通知。 您需要确保您使用 userId 向 Push Notifications 服务注册,此选项才能工作。
  • 额外的有效载荷: 为您的通知指定自定义负载值。
  • 可扩展通知: 这为客户提供了一个选项来扩展具有更多信息的通知,而基本通知将在通知折叠时可见。 支持以下选项:
    • 大图片通知:您可以选择在通知展开时包含图片。 确保为图片提供标题文本和 URL。

     

    • 大文本通知:您可以选择在标题中包含附加文本。 确保提供大文本消息和标题文本信息。

     

    • 收件箱样式通知:您可以发送样式为收件箱通知的通知。 提供标题文本并在行中提供消息。

总结

就是这样! 就像这样,您只需四个简单的步骤即可在您的应用程序中设置推送通知,而无需经历采购服务器的麻烦和不必要的复杂性。 这就是使用 IBM Bluemix 进行开发变得多么容易。 推送通知只是他们的产品之一。 他们提供众多数据库和 Watson API。 而且由于 Bluemix 控制台将所有内容联系在一起,因此您无需在服务之间不断切换。 这一切都在一个屋檐下。 我希望本文能帮助您学习新的东西,如果您有兴趣学习更多类似的东西,我强烈建议您尝试 Bluemix。

分享
分享
分享
Pin
708 分享

披露: TechLila 上发布的内容受读者支持。 对于通过我们的附属链接进行的购买,我们可能会收到佣金,您无需支付额外费用。 阅读我们的 免责声明页面 了解更多关于我们的资金、编辑政策和支持我们的方式。

分享就是关怀

分享
分享
分享
Pin
708 分享
Prateek Prasad 的头像

普拉提克·普拉萨德

Prateek 是来自班加罗尔的移动开发人员和设计师。 当他不为下一版死星的 First Order 工作时,他正在为 TechLila 创作插图和制作视频。 他还试图为自己的咖啡瘾做点什么。

类别

  • Android

标签

IBM Bluemix

读者互动

人们在说什么

  1. 玛丽娜的化身Marina

    您在这里分享了一些重要信息。 很高兴读到你的博客。

    回复
  2. Suraj Padmasali 头像苏拉·帕德马萨利

    很好的分步指南,简单易懂! 这对我帮助很大!

    回复
  3. 艾玛的头像艾玛

    不错的文章。 喜欢你一步一步提供的提示。

    回复

发表您的评论 取消回复

您的电子邮件地址将不会被公开。 必填 *

主要侧边栏

热门

如何在 Windows 上提高宽带速度

10 年 2021 款最佳 Android 启动器

安装 Windows 10 后要做的事情 – Windows 10 提示和技巧

您可以用来私下搜索网络的 10 大搜索引擎

55 个让你大吃一惊的有趣的计算机事实

购买笔记本电脑时要注意什么 - 笔记本电脑购买指南

Fusion Drive 与 SSD – 没有人告诉您关于 Fusion 与 SSD 存储的事情

有用的工具

• grammarly破解 - 免费语法检查器
• SEMrush – 专家信赖的最佳 SEO 工具
• Setapp – Mac 和 iOS 的一站式订阅

趋势主题

  • Android
  • 网络
  • iPhone
  • Linux的
  • 麦金塔
  • 确保用户
  • 社交媒体
  • 技术
  • Windows

值得检查

适用于 Windows 10(10 版!)的 2022 个最佳声音均衡器

14 款强烈推荐且免费的最佳 VLC 皮肤

页脚徽标 页脚文字标志

页脚

关于我们

您好,欢迎来到 TechLila,这是著名的技术博客,您可以在其中找到有关掌握基础知识及其他知识的资源丰富的文章。

在 TechLila,我们的主要目标是提供独特的信息,例如高质量的提示和技巧、教程、Windows、Macintosh、Linux、Android、iPhone、安全性的操作指南以及一些杂项子主题,例如评论。

链接

  • 关于我们
  • 联系我们
  • 免责声明
  • 隐私政策
  • 条款

关注

使用 Genesis 框架的自定义主题

Cloudways 云托管

语言

en English
bg Българскиzh-CN 简体中文nl Nederlandsen Englishtl Filipinofr Françaisde Deutschid Bahasa Indonesiait Italianoja 日本語pl Polskipt Portuguêsro Românăru Русскийsr Српски језикes Españolsv Svenskatr Türkçeuk Українськаvi Tiếng Việt

© 版权所有 2012–2023 科技丽拉。保留所有权利。