在前一篇文章中,我们已经将Wtach的环境测试成功,下面进入我们自己消息的接收。

1.安装JPush插件在我们的App中,这个具体步骤可以参考 Ionic 安装JPush过程

2.在App上的登录模块设置别名,因为我们的目标是,根据不同的账户发送不同的消息。

.controller("LoginController",function ($scope, $state, AccountService, $rootScope, $stateParams, $ionicHistory, $ionicPopup, $cordovaToast,Storage) {
try
{
$scope.flag = $stateParams.flag;
$scope.hide = "";
$scope.user = {};
$scope.doLogin = function ()
{
if ($scope.user.uname)
{
var tips;
AccountService.userLogin($scope.user).then(function(loginCode)
{
if(loginCode && != loginCode)
{
tips = "登录成功";
Storage.set("LoginUser",loginCode);
$rootScope.user = loginCode;
var params = {
alias:$scope.user.uname
};
var dataAlias = JSON.stringify(params);
window.plugins.jPushPlugin.setAlias($scope.user.uname);
$ionicHistory.goBack();
}
else
{
if( == loginCode)
{
tips = "用户名或密码错误";
window.localStorage.user = null;
}
else
{
tips = "登录失败,请稍后再试!";
}
}
window.cordova && $cordovaToast.showShortBottom(tips);
});
} };
}
catch (error)
{
$scope.hideLoad();
console.log("exception:"+error);
}
})

红色部分是重点,记录了每一个用户的登录名,以后就会给这个登录名发送通知。原则上App打包安装,可以通过Jpush的官网测试效果了,不过我打算通过应用程序自己发送消息。

3.C# Client端程序调用Jpush Api发送消息,首先去JPush官网下载dll

       public bool SendMessage(string alias, string message)
{
bool isSuccess = true;
JPushClient client = new JPushClient("******", "7777&&&&&&"); PushPayload pushpayload_alias = new PushPayload();
pushpayload_alias.platform = Platform.android();
pushpayload_alias.audience = Audience.s_alias(alias);
pushpayload_alias.notification = new Notification().setAlert(message); try
{
var result = client.SendPush(pushpayload_alias);
if (result.isResultOK())
{
isSuccess = true;
}
else
{
isSuccess = false;
MessageResult = result.ResponseResult.exceptionString;
}
}
catch (APIRequestException er)
{
isSuccess = false;
MessageResult = er.Status.ToString() + ";" + er.ErrorCode + ";" + er.ErrorMessage;
}
if (isSuccess == false)
{
string date = DateTime.Now.ToString("yyyy-MM-dd HH:mm:dd");
string content = date + "@" + alias + ":" + MessageResult + "\r\n";
WriteLog(content);
}
return isSuccess;
}

注意JPushClient对应的两个参数,是JPush分配给你的两个appKey和masterKey。

alias参数就是客户端登录的用户帐号名,message是通知的内容

4.发送消息的数据源,其中Sender对应App的登录名,MessageTest对应的通知/消息内容。

5.手机和Watch接收到通知的情况

到此,Watch就可以接收我们自己的消息了,然后去做具体的业务了。

Ionic app 通知在Moto 360 Watch上显示通知(2)的更多相关文章

  1. Ionic app 通知在Moto 360 Watch上显示通知(1)

    手机与Moto 360 watch配对之后,watch上会接收到微信消息的通知,那么我们就可以利用这个特性开发一个App,在Watch显示我们自己的通知,具体过程如下 1.手机扫描二维码安装ticwa ...

  2. Android中使用Notification在状态栏上显示通知

    场景 状态栏上显示通知效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新 ...

  3. ionic app打包和签名

    ionic app打包和签名 1.首先在项目根目录执行  ionic platform add android  生成Android平台. 2.配置应用签名:在根目录下执行以下命令 keytool - ...

  4. Ionic App之国际化(3) json数组的处理

    接上一篇Ionic App之国际化(2) json数组的处理 之后,如何处理json数据长度的问题,目前的一个折中方法是翻译长度字段. 多语言文件内容: "MyLa": { &qu ...

  5. Ionic app 上传图片之webApi接口

    App上传图片对应的webApi服务端是怎么处理的呢? using System; using System.Collections.Generic; using System.Diagnostics ...

  6. Ionic APP 热更新 之 产品发布状态下的热更新搭建,去local-dev-addon插件

    上一篇,我们介绍了在本地开发环境下的ionic项目热更新测试, 本文,我们将详细说明如何在去掉cordova-hot-code-push-local-dev-addon插件的情况下,实现热更新. 使用 ...

  7. Delphi APP 開發入門(七)通知與雲端推播

    Delphi APP 開發入門(七)通知與雲端推播 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數: ...

  8. 你的旧版本 App 为何运行在 iPhone 12 上没有异常?

    背景 当我在 10月14日 iPhone 12 系列发布直播,看到 iPhone 12 系列的分辨率后,我注意到这些分辨率是全新的时,我立即在群里吐槽:又需要适配一波了.我只是以为宽高变化会导致字号变 ...

  9. 带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载

    title: 带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载 tags: -RecyclerView,下拉刷新,上拉加载更多 grammar_cjkRuby: true - ...

随机推荐

  1. 3dmax导入模型,解决贴图不显示的问题

    在3dmax中导入模型数据后,经常出现贴图不显示的情况,效果如下图: 解决方法: 1.怀疑是贴图文件的路径设置有误.快捷键 shift+T打开“资源追踪”界面,重新设置贴图的正确路径(这里如果快捷键无 ...

  2. python自动化开发-5b

    python的常用模块(续) time和datetime模块 time模块和datetime模块举例 例子:获取当前时间 import datetime,time now = time.strftim ...

  3. Android Studio 使用ViewPager + Fragment实现滑动菜单Tab效果 --简易版

    描述: 之前有做过一个记账本APP,拿来练手的,做的很简单,是用Eclipse开发的: 最近想把这个APP重新完善一下,添加了一些新的功能,并选用Android Studio来开发: APP已经完善了 ...

  4. 腾讯X5WebView集成及在移动端中使用

    工作中经常涉及H5网页的加载工作,最多使用的就是安卓系统控件WebView,但是当网页内容比较多的时候,需要等待很久才能加载完,加载完后用户才能看到网页中的内容,这样用户需要等很久,体验很差. 那能不 ...

  5. http协议及长连接和短连接

    1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议. IP协议主要解决网络路由和寻址 ...

  6. Elasticsearch5.4署遇到的问题

    问题一 can not run elasticsearch as root Elastic 不建议通过root用户启动ES服务器,如果非要用root启动,可以在config/jvm.options配置 ...

  7. MongoDB的基本操作:服务端启动,客户端连接,CRUD操作

    本文内容: MongoDB的介绍 MongoDB服务端的启动 MongoDB客户端连接 SQL与MongoDB相关概念解释 什么是BSON 数据库操作 集合操作 文档操作 测试环境:win10 软件版 ...

  8. DirectX SDK (June 2010)安装错误S1023,解决方法

    转自:http://hi.baidu.com/rootcat/item/6730f15f85e2c1958c12ed81 DirectX SDK (June 2010)安装错误S1023,解决方法 导 ...

  9. box-shadow的动效制作

    突然发现原来box-shadow的功能很强大,还能做动效,下面整理下box-shadow几个效果 案例1:hover效果 <a href="/app/list">WEB ...

  10. 布局:高度已知,布局一个三栏布局,左栏和右栏宽度为200px,中间自适应

    需求:高度已知为200px,写出三栏布局,左栏和右栏各位200px,中间自适应,如下图所示: 方法一:float浮动布局 原理是:定义三个区块,需要注意的是中间的区块放在右边区块的下面,统一设置高度为 ...