成语| 古诗大全| 教学资源| 作文| 扒知识| 扒知识繁体

当前位置:首页 > 趣味生活

Android端 配置极光推送

Q1:极光推送android端怎么自动换行内容

第一步:创建极光推送开发者帐号
要创建极光推送开发者帐号,请访问极光推送官方网站
第二步:Portal上创建应用
创建帐号进入极光推送后,首先显示的是创建应用的界面。填上你的应用程序的名称,以及 Android包名这二顶就可以了。
第三步:下载应用Example
创建帐号进入极光推送后,首先显示的是创建应用的界面。填上你的应用程序的名称,以及 Android包名这二顶就可以了。
点击 ”下载应用Example “后,你将下载到一个 .zip 压缩文件。解压后,即看到一个同名目录。这个目录下,是一个 Android 项目里的所有文件。
第四步:把Example(Android项目)导入 Eclipse 里
在你的 Eclipse 里,新建一个项目,把项目目录位置指向上步骤解压缩开的 Example目录。
第五步:运行 Example 这个应用
在你的 Eclipse 里,新建一个项目,把项目目录位置指向上步骤解压缩开的 Example目录。
如果你的 Android 手机接在电脑上了,则这个 JPush Example 应用就可以安装上,并运行起来了。
做下一步动作之前,请确保你的手机上的网络是可用的。
第六步:Portal上推送通知
第七步:手机上收到通知
在上述步骤安装 JPush Example 的手机上,你就可以收到推送的通知了。
第八步:Portal上推送消息
第九步:在LogCat中查看收到的消息
推送消息可以在LogCat日志中查看,开发者根据自己需要做展现处理,Jpush不做干预。

Q2:Android 使用了极光推送.怎么样可以控制用

Ionic 集成 jpush(极光)推送之 IOS 篇

说明:这篇文章已经年代久远,其中一些地方可能已经无效,仅做参考

极光推送官方版的 phonegap 插件在这里7。
由于官方版插件 ios 版暂时没有打开通知的方法,所以在官方基础上修改了下,修改后的插件放在了这里4,下面说明以修改后的插件为准。(感谢极光官方大神viper耐心帮助,同时也参考了下@lanceli1大神的cnodejs-ionic7项目)

极光账户设置部分可以参考小和尚的这篇9分享。

下面主要说明项目代码部分修改。

新建一个 ionic项目

$ ionic start --id com.ionichina.ionicjpush ionic_jpush tabs

注:修改 id 为自己应用的 Bundle identifier

添加 IOS 平台

$ cd ionic_jpush
$ ionic platform add ios

安装插件

$ ionic plugin add

等待时间比较长,你也可以像小和尚文章9里介绍的先下载下来,再安装,但这个过程是跑不了的

(接下来,蛋疼的事情开始了)

修改配置

修改:ionic_jpush\plugins\cn.jpush.phonegap.JPushPlugin\src\ios\PushConfig.plist
修改对应的APP_KEY和CHANNEL(渠道)为你自己申请的值,

注意
确保有如下代码,不然后面 Xcode 运行会警告:

APS_FOR_PRODUCTION0

在 js 中添加通知实现

在app.js最后添加一个 push 工厂(参考了@lanceli1大神的Ccnodejs-ionic7项目)

.factory(Push, function() { var push; return { setBadge: function(badge) { if (push) { console.log(jpush: set badge, badge);
plugins.jPushPlugin.setBadge(badge);
}
}, setAlias: function(alias) { if (push) { console.log(jpush: set alias, alias);
plugins.jPushPlugin.setAlias(alias);
}
}, check: function() { if (window.jpush && push) {
plugins.jPushPlugin.receiveNotificationIniOSCallback(window.jpush); window.jpush = null;
}
}, init: function(notificationCallback) { console.log(jpush: start init-----------------------);
push = window.plugins && window.plugins.jPushPlugin; if (push) { console.log(jpush: init);
plugins.jPushPlugin.init();
plugins.jPushPlugin.setDebugMode(true);
plugins.jPushPlugin.openNotificationInAndroidCallback = notificationCallback;
plugins.jPushPlugin.receiveNotificationIniOSCallback = notificationCallback;
}
}
};
});

在 app.js 的 run 函数里定义通知回调函数

记得在 run 函数里引用 Push 先

// push notification callback
var notificationCallback = function(data) { console.log(received data : + data); var notification = angular.fromJson(data); //app 是否处于正在运行状态
var isActive = notification.notification; // here add your code //ios
if (ionic.Platform.isIOS()) { window.alert(notification);
} else { //非ios(android)
}
};

在 $ionicPlatform.ready 里进行初始化

//初始化Push.init(notificationCallback);//设置别名Push.setAlias("12345678");

编译 IOS 项目

$ ionic build ios

(接下来,更蛋疼的事情开始了)

修改配置 IOS 项目(不要问我为啥)

修改 AppDelegate.m,
添加

#import "APService.h"#import "JPushPlugin.h" //viper

didFinishLaunchingWithOptions函数中添加


// Required#if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_7_1、 if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) { //可以添加自定义categories
[APService registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge UIUserNotificationTypeSound UIUserNotificationTypeAlert)
categories:nil];
} else { //categories 必须为nil
[APService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge UIRemoteNotificationTypeSound UIRemoteNotificationTypeAlert)
categories:nil];
}#else
//categories 必须为nil
[APService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge UIRemoteNotificationTypeSound UIRemoteNotificationTypeAlert)
categories:nil];#endif
// Required
[APService setupWithOption:launchOptions];

didRegisterForRemoteNotificationsWithDeviceToken中添加

// Required[APService registerDeviceToken:deviceToken];
[APService setDebugMode];

添加函数

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // Required
[APService handleRemoteNotification:userInfo]; BOOL isActive; if (application.applicationState == UIApplicationStateActive) {
isActive = TRUE;
} else {
isActive = FALSE;
} NSDictionary *dict=[[NSMutableDictionary alloc] initWithDictionary:userInfo]; [dict setValue: [[NSNumber alloc] initWithBool:isActive] forKey:@"isActive" ]; [[NSNotificationCenter defaultCenter] postNotificationName:kJPushPlugReceiveNotificaiton
object:dict] ;//viper }

OC 代码算是完事儿,然后就是配置

修改项目 Capabilities,打开 Background Modes,勾选最后一项Remote notications

设置证书,这个就不教了,网上一大堆

Xcode 这边就算配置完了

接下就是设置一些Xcode常规操作,编译运行,从极光官方控制台发送一条通知,然后查看Xcode控制台,应该就会有推送的通知数据打印了。
下面的事儿你自己应该搞的定。

Q3:android中怎么自定义客户端服务接受极光推送的消息

参考官方Android SDK 教程完成激光推送的基本配置
区别通知和自定义消息
通知即指在手机的通知栏(状态栏)上会显示的一条通知信息。
自定义消息是极光推送自己的概念。
自定义消息不是通知,所以不会被SDK展示到通知栏上。其内容完全由开发者自己定义。
自定义消息主要用于应用的内部业务逻辑。一条自定义消息推送过来,有可能没有任何界面显示。
本篇博客介绍的就是使用自定义通知实现上图效果。
实现自己定义的Receiver,并参考官方文档在AndroidManifest.xml中配置。
package com.cn.cwvs.fruit;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
import org.json.JSONException;
import org.json.JSONObject;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import cn.jpush.android.api.JPushInterface;
public class MyJPushReceiver extends BroadcastReceiver {
private static String TAG = "pushreceiver";
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
Log.d(TAG, "onReceive - " + intent.getAction());
if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) {
} else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent
.getAction())) {
// 自定义消息不会展示在通知栏,完全要开发者写代码去处理
String content = bundle.getString(JPushInterface.EXTRA_MESSAGE);
String extra = bundle.getString(JPushInterface.EXTRA_EXTRA);
System.out.println("收到了自定义消息@@消息内容是:"+ content);
System.out.println("收到了自定义消息@@消息extra是:"+ extra);
//**************解析推送过来的json数据并存放到集合中 begin******************
Map map = new HashMap();
JSONObject jsonObject;
try {
jsonObject = new JSONObject(extra);
String type = jsonObject.getString("type");
map.put("type", type);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
map.put("content", content);
//获取接收到推送时的系统时间
Calendar rightNow = Calendar.getInstance();
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
String date = fmt.format(rightNow.getTime());
map.put("date", date);
MyApp.data.add(map);
//**************解析推送过来的json数据并存放到集合中 end******************
} else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent
.getAction())) {
System.out.println("收到了通知");
// 在这里可以做些统计,或者做些其他工作
} else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent
.getAction())) {
System.out.println("用户点击打开了通知");
// 在这里可以自己写代码去定义用户点击后的行为
Intent i = new Intent(context, MainActivity.class); // 自定义打开的界面
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
} else {
Log.d(TAG, "Unhandled intent - " + intent.getAction());
}
}
}

wwW.bAZhIShI.#com

Q4:极光推送android怎么和服务器端

注册应用

1

进入官网

首先进入官网首页注册账号

2

注册应用

登录到用户平台,点击创建应用如图所示:

3

包名:创建应用项目的基础包,单击创建,产生应用信息如图所示:

环境搭建

1

SDK下载

下载 JPUSH Android – SDK。

2

导入SDK开发包

复制 libs/jpush-sdk-release1.x.y.jar 到工程 libs/ 目录下

复制 libs/armeabi/libjpush.so 到工程 libs/armeabi 目录下

3

配置AndroidManifest.xml

详细请参照官网文档中说明进行配置

4

测试是否成功

集成完成后,JPush 提供的推送服务是默认就已经开启,这时客户端就可以接收到来自服务的消息了,可通过登录到JPush用户平台,发送通知测试集成是否成功

Q5:关于Android端的极光推送

清单文件看看有没有权限,然后看看手机里面,安全软件关了试试

Q6:android 极光推送慢是啥情况

用户发送信息到极光服务器好像不行吧。极光推送也就是JPush,只有你通过JPush发送信息到客户端不存在,客户端发送信息到JPush吧。

Q7:android极光推送标签怎么用

方提供了Demo ,在3分钟快速集成SDK文档里面,可以下载,如果不了解极光推送,可以吧官方的Demo下载下来运行一遍,就可以看见效果了
这边我已经下来过了,所以我就直接把效果图贴出来,方便大家观看
在极光推送的后台输入:JPushTest后,点击发送,客户端这便就会受到通知,这只是一个简单的效果
实现
好了,看完效果之后,我们就一步一步实现这个效果把
注册账号拿到AppKey
第一步就是要去官网注册账号,之后点击开发者服务选极光推送
第二步就是点击立即使用
第三步 创建应用
第四步 填写应用信息
第五步 拿到AppKey
新建一个工程
把刚才下载好的SDK解压出来 打开libs文件夹 其中有两部分,把jpush-android-2.1.7.jar这个jar包复制到我们工程的libs下面,之后在app/src/main文件夹下面新建一个文件夹,叫:jniLibs,把刚才除了jpush-android-2.1.7.jar这个以外所有的文件夹都放到这里

猜你喜欢

更多