Android-推送(极光)

Android-推送(极光)


–首先要注册一个极光帐号 然后在 创建应用
这里写图片描述


下面是创建好应用
这里写图片描述


然后在推送
这里写图片描述


下面是手机效果图:
这里写图片描述


接下来在Android Studio中编写
压缩包在云盘里http://pan.baidu.com/s/1jIyp1no

把项目切换成Project
把压缩包libs目录下的文件(全部)复制到项目的libs目录下

这里写图片描述

选择后2个JAR包–然后右键 Add As Library…
然后在压缩包res下面的drawable-hdpi文件夹放到项目的如下图:

这里写图片描述

然后在压缩包res下面的layout里的2个XML放到项目的如下图:

这里写图片描述

然后在压缩包res下面的values里的1个XML放到项目的如下图:

这里写图片描述


然后在build.gradle里添加配置

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.1"

//只有下面这几行
    //来源
    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }
//只有上面这几行

    defaultConfig {
        applicationId "com.dzz.android33_push"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.1'
    testCompile 'junit:junit:4.12'
    compile files('libs/jcore-android_v1.1.0.jar')
    compile files('libs/jpush-android_v3.0.1.jar')
}

然后打开压缩包里 AndroidManifest.xml 文件
在里面复制

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.dzz.android33_push">

/复制这个以下/
    <!-- Required -->       
                    //在AndroidManifest中使用 ${applicationId} 引用gradle中定义的包名
    <permission android:name="${applicationId}.permission.JPUSH_MESSAGE" android:protectionLevel="signature" />
    <!-- Required 一些系统要求的权限,如访问网络等-->
    <!--官方定义的权限,允许应用接收JPUSH内部代码发送的广播消息。-->
    <uses-permission android:name="com.dzz.android33_push.permission.JPUSH_MESSAGE" />
    <!--允许应用可以接收点亮屏幕或解锁广播。-->
    <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
    <!--允许应用可以访问网络。-->
    <uses-permission android:name="android.permission.INTERNET" />
    <!--允许应用在手机屏幕关闭后后台进程仍然运行-->
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <!--允许应用访问手机状态。-->
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <!--允许应用写入外部存储。-->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <!--允许应用读取外部存储。-->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <!--允许应用读写系统设置项。-->
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <!--允许应用震动。-->
    <uses-permission android:name="android.permission.VIBRATE" />
    <!--允许应用挂载/卸载 外部文件系统。-->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    <!--允许应用获取网络信息状态,如当前的网络连接是否有效。-->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <!-- Optional for location -->
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <!-- 用于开启 debug 版本的应用在6.0 系统上 层叠窗口权限 -->

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />

    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />

    <uses-permission android:name="android.permission.GET_TASKS" />

///复制这个以上//


    <!-- 配置一下  MyApplication-->
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:name=".MyApplication"   //还要配置MyApplication
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>


///复制这个以上//
        <!-- Rich push 核心功能 since 2.0.6-->
        <activity
            android:name="cn.jpush.android.ui.PopWinActivity"
            android:exported="false"
            android:theme="@style/MyDialogStyle"></activity>
        <!-- Required SDK核心功能-->
        <activity
            android:name="cn.jpush.android.ui.PushActivity"
            android:configChanges="orientation|keyboardHidden"
            android:exported="false"
            android:theme="@android:style/Theme.NoTitleBar">
            <intent-filter>
                <action android:name="cn.jpush.android.ui.PushActivity" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="com.dzz.android33_push" />
            </intent-filter>
        </activity>
        <!-- Required SDK核心功能-->
        <service
            android:name="cn.jpush.android.service.DownloadService"
            android:enabled="true"
            android:exported="false"></service>
        <!-- Required SDK 核心功能-->
        <!-- 可配置android:process参数将PushService放在其他进程中 -->
        <service android:name="cn.jpush.android.service.PushService" android:process=":mult">
        <intent-filter>
        <action android:name="cn.jpush.android.intent.REGISTER"/>
        <action android:name="cn.jpush.android.intent.REPORT"/>
        <action android:name="cn.jpush.android.intent.PushService"/>
        <action android:name="cn.jpush.android.intent.PUSH_TIME"/>
    </intent-filter>
    </service>
        <!-- since 1.8.0 option 可选项。用于同一设备中不同应用的JPush服务相互拉起的功能。 -->
        <!-- 若不启用该功能可删除该组件,将不拉起其他应用也不能被其他应用拉起 -->
        <service
            android:name="cn.jpush.android.service.DaemonService"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="cn.jpush.android.intent.DaemonService" />
                <category android:name="com.dzz.android33_push" />
            </intent-filter>
        </service>
        <!-- Required SDK核心功能-->
        <receiver
            android:name="cn.jpush.android.service.PushReceiver"
            android:enabled="true">
            <intent-filter android:priority="1000">
                <action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" />
                <!--Required 显示通知栏 -->
                <category android:name="com.dzz.android33_push" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.USER_PRESENT" />
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            </intent-filter>
            <!-- Optional -->
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_ADDED" />
                <action android:name="android.intent.action.PACKAGE_REMOVED" />
                <data android:scheme="package" />
            </intent-filter>
        </receiver>
        <!-- Required SDK核心功能-->
        <receiver
            android:name="cn.jpush.android.service.AlarmReceiver"
            android:exported="false" />
        <!-- Required . Enable it you can get statistics data with channel -->
        <meta-data android:name="JPUSH_CHANNEL" android:value="developer-default"/>
        <meta-data android:name="JPUSH_APPKEY" android:value="411c59a13cd6c21734ec253e"/>
                                                   //411c59a13cd6c21734ec253e  如下图 复制AppKey:
        <!-- </>值来自开发者平台取得的AppKey-->

///复制这个以上//


    </application>

</manifest>

这里写图片描述


还要新建一个MyApplication Acticity

package com.dzz.android33_push;

import android.app.Application;

import cn.jpush.android.api.JPushInterface;

/**
 * Created by 朝花偏不夕拾 on 2017/3/3.
 */

public class MyApplication extends Application{
    @Override
    public void onCreate() {
        super.onCreate();
        JPushInterface.setDebugMode(true);
        JPushInterface.init(this);
    }
}

编写完后在手机上面运行

下面是效果图:
这里写图片描述



项目压缩包:http://pan.baidu.com/s/1eSBoNzO


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值