IBM Mobile First Push Notification 不适用于混合应用程序
IBM Mobile First Push Notification not working for Hybrid application
我在 android 台设备上接收推送通知时遇到问题
我遵循的步骤:
- 已创建具有所有安全配置的应用程序
- 创建了用于提交通知的适配器
- 构建并部署了应用程序和适配器
在我的设备 (android) 中打开了应用程序并订阅了推送通知
一个。使用表单验证(使用 j_security_check)
b。提供手机号码作为用户名
调用了适配器的提交通知函数。
一个。收到回复说推送通知已发送给用户
但是设备上没有出现推送通知 (android)。尝试了几个设备 (android),但遇到了同样的问题。
我该如何调试这个问题或者我做错了什么。
P.S 我的示例推送应用程序工作正常。但是在与我的应用程序集成时它不起作用。唯一不同的是登录页面
示例推送应用程序登录页面
<form id="loginForm" >
<input type="text" id="usernameInputField" placeholder="Username"/><br />
<input type="password" id="passwordInputField" placeholder="Password"/><br/>
<input type="button" id="loginButton" value="Login" />
</form>
按钮绑定代码
$('#loginButton').bind('click', function () {
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#usernameInputField').val(),
j_password : $('#passwordInputField').val()
};
options.headers = {};
pushAppRealmChallengeHandler.submitLoginForm(reqURL, options, pushAppRealmChallengeHandler.submitLoginFormCallback);
});
我的应用登录页面
<span class="fields">
<input type="text" data-role="none" placeholder="Mobile Number" class="input_text" id="mobnum"/>
<input type="text" data-role="none" placeholder="Name" class="input_text" id="name"/>
<input type="text" data-role="none" placeholder="Email ID" class="input_text" id="email"/>
<input type="text" data-role="none" placeholder="Organization" class="input_text" id="org"/>
<span class="next_button"><a href="#" data-role="none" id="nxt_btn2"></a></span>
</span>
按钮绑定代码
$('#nxt_btn2').bind('click', function () {
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#mobnum').val(),
j_password : $('#email').val()
};
options.headers = {};
pushAppRealmChallengeHandler.submitLoginForm(reqURL, options, pushAppRealmChallengeHandler.submitLoginFormCallback);
});
未启用 Android 的 Google 云消息传递。所以我订阅了消息,消息从 MobileFirst 服务器发送到 GCM,但由于 API 在 GCM 中未启用,所以我没有在我的设备上收到通知。
采取的步骤
- 在 GCM
中为 Android API 启用了云消息传递
- 重新生成了 API 密钥。
特别感谢@kawineshSK 和 IdanAdar
我在 android 台设备上接收推送通知时遇到问题
我遵循的步骤:
- 已创建具有所有安全配置的应用程序
- 创建了用于提交通知的适配器
- 构建并部署了应用程序和适配器
在我的设备 (android) 中打开了应用程序并订阅了推送通知
一个。使用表单验证(使用 j_security_check)
b。提供手机号码作为用户名
调用了适配器的提交通知函数。
一个。收到回复说推送通知已发送给用户
但是设备上没有出现推送通知 (android)。尝试了几个设备 (android),但遇到了同样的问题。
我该如何调试这个问题或者我做错了什么。
P.S 我的示例推送应用程序工作正常。但是在与我的应用程序集成时它不起作用。唯一不同的是登录页面
示例推送应用程序登录页面
<form id="loginForm" >
<input type="text" id="usernameInputField" placeholder="Username"/><br />
<input type="password" id="passwordInputField" placeholder="Password"/><br/>
<input type="button" id="loginButton" value="Login" />
</form>
按钮绑定代码
$('#loginButton').bind('click', function () {
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#usernameInputField').val(),
j_password : $('#passwordInputField').val()
};
options.headers = {};
pushAppRealmChallengeHandler.submitLoginForm(reqURL, options, pushAppRealmChallengeHandler.submitLoginFormCallback);
});
我的应用登录页面
<span class="fields">
<input type="text" data-role="none" placeholder="Mobile Number" class="input_text" id="mobnum"/>
<input type="text" data-role="none" placeholder="Name" class="input_text" id="name"/>
<input type="text" data-role="none" placeholder="Email ID" class="input_text" id="email"/>
<input type="text" data-role="none" placeholder="Organization" class="input_text" id="org"/>
<span class="next_button"><a href="#" data-role="none" id="nxt_btn2"></a></span>
</span>
按钮绑定代码
$('#nxt_btn2').bind('click', function () {
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#mobnum').val(),
j_password : $('#email').val()
};
options.headers = {};
pushAppRealmChallengeHandler.submitLoginForm(reqURL, options, pushAppRealmChallengeHandler.submitLoginFormCallback);
});
未启用 Android 的 Google 云消息传递。所以我订阅了消息,消息从 MobileFirst 服务器发送到 GCM,但由于 API 在 GCM 中未启用,所以我没有在我的设备上收到通知。
采取的步骤
- 在 GCM 中为 Android API 启用了云消息传递
- 重新生成了 API 密钥。
特别感谢@kawineshSK 和 IdanAdar