1.在JPush极光推送官方下载 JPush SDK(jpush-android-release-2.1.7.zip)

2.解压下载好的压缩包解压并复制libs/jpush-android-2.1.7.jar 到工程 libs/ 目录下,再复制libs/armeabi/libjpush217.so 到工程 libs/armeabi 目录下(如果没有armeabi文件夹自己新建就可以了,如果libs下还有armeabi-v7a文件夹,则需要把libjpush217.so复制到此文件夹下);

3.在AndroidManifest.xml文件中配置权限:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="您应用的包名"android:versionCode="216"android:versionName="2.1.6"><uses-sdk android:minSdkVersion="9" android:targetSdkVersion="23" /><!-- Required --><permission android:name="您应用的包名.permission.JPUSH_MESSAGE" android:protectionLevel="signature" /><!-- Required --><uses-permission android:name="您应用的包名.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.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.WRITE_SETTINGS" /> <!-- Optional. Required for location feature --><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><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" /><application
        android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:name="Your Application"><!-- Required SDK 核心功能--><!-- option since 2.0.5 可配置PushService,DaemonService,PushReceiver,AlarmReceiver的android:process参数 将JPush相关组件设置为一个独立进程 --><!-- 如:android:process=":remote" --><service
            android:name="cn.jpush.android.service.PushService"android:enabled="true"android:exported="false" ><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="您应用的包名"/></intent-filter></service><!-- Required --><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" /> <category android:name="您应用的包名"/> </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核心功能--><activity
            android:name="cn.jpush.android.ui.PushActivity"android:configChanges="orientation|keyboardHidden"android:exported="false" ><intent-filter><action android:name="cn.jpush.android.ui.PushActivity" /><category android:name="android.intent.category.DEFAULT" /><category android:name="您应用的包名" /></intent-filter></activity><!-- Required SDK核心功能--><service
            android:name="cn.jpush.android.service.DownloadService"android:enabled="true"android:exported="false" ></service><!-- Required SDK核心功能--><receiver android:name="cn.jpush.android.service.AlarmReceiver" /><!-- User defined. 用户自定义的广播接收器--><receiver
             android:name="您自己定义的Receiver"android:enabled="true"><intent-filter><!--Required 用户注册SDK的intent--><action android:name="cn.jpush.android.intent.REGISTRATION" /> <!--Required 用户接收SDK消息的intent--> <action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" /> <!--Required 用户接收SDK通知栏信息的intent--><action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" /> <!--Required 用户打开自定义通知栏的intent--><action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" /> <!--Optional 用户接受Rich Push Javascript 回调函数的intent--><action android:name="cn.jpush.android.intent.ACTION_RICHPUSH_CALLBACK" /> <!-- 接收网络变化 连接/断开 since 1.6.3 --><action android:name="cn.jpush.android.intent.CONNECTION" /><category android:name="您应用的包名" /></intent-filter></receiver><!-- Required. For publish channel feature --><!-- JPUSH_CHANNEL 是为了方便开发者统计APK分发渠道。--><!-- 例如: --><!-- 发到 Google Play 的APK可以设置为 google-play; --><!-- 发到其他市场的 APK 可以设置为 xxx-market。 --><!-- 目前这个渠道统计功能的报表还未开放。--><meta-data android:name="JPUSH_CHANNEL" android:value="developer-default"/><!-- Required. AppKey copied from Portal --><meta-data android:name="JPUSH_APPKEY" android:value="Your AppKey"/> </application>
</manifest>

Manifest清单文件配置好了(自己的包是自己的工程的包,自己的AppKey是从JPush上面新建项目而来的,自己可在JPush官网注册登录创建一个App就会生成这个key,要推送也必须要这个key才行)

4.最后在自己的Activity中调用这两个方法,才能启动。

protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 必须setDebugMode() 和 init()JPushInterface.setDebugMode(true);JPushInterface.init(this);}

配置完成就可以测试是否集成JPush成功!

但是还是运行不了出现这个错误([获取JPush SDK版本失败,请重试!]和[JPushGlobal] JPush .so file do not match JPush .jar file in the project, Failed to init JPush)

造成这个错误的原因是Android Studio没有正确加载引入的jar包(libjpush217.so)。

解决方案:

//在android下添加这个一个sourceSets.mainsourceSets {main {jniLibs.srcDirs = ['libs']}}

最后测试JPush推送通知成功,是不是心里有点小激动呢~

解决Android Studio配置JPush极光推送错误方案相关推荐

  1. Android Jpush极光推送

    平时我们开发手机客户端总是少不了与服务器进行交流,那当我们服务器数据有更新时候,客户端是怎么知道的呢,我们以前一般用两种方法: 1,客户端每隔一段时间向服务器发请求,检测数据是否发生变化,当发生变化的 ...

  2. Laravel 集成 JPush 极光推送指北

    2019独角兽企业重金招聘Python工程师标准>>> 我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就 ...

  3. php集成jpush教程,Laravel 集成 JPush 极光推送指北

    我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就不用看了). Laravel 使用 Composer 来管理代码依赖.所以 ...

  4. JPush极光推送Java服务器端API

    菜鸟的春天 JPush极光推送Java服务器端API // 对android和ios设备发送 JPushClient jpush = new JPushClient(masterSecret, app ...

  5. iOS第三方集成之jpush极光推送

    iOS第三方集成之jpush极光推送 现在很多app都带推送功能,极光推送是很受大家欢迎的第三方推送,本文将为iOS初学者和初次设计开发推送的攻城狮们提供以下自己的使用心得. 大家可以边参考官方文档, ...

  6. android迁移androidx、极光推送(v4.9.0)配置

    一.版本配置 编译正常配置: buildToolsVersion       : "27.1.1", minSdkVersion           : 19, classpath ...

  7. Android开发之第三方推送JPush极光推送知识点详解 学会集成第三方SDK推送

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 下面是一些知识点介绍,后期将会带领大家进行代码实战: 一.Android实现推送方式解决方案: 1.推 ...

  8. jpush android 离线推送,JPush极光推送3分钟搞定Android Push

    在 Android 上,要实现 Push 功能可没有那么简单! 众所周知的原因是,Android 官方的推送服务 GCM 在国内手机上用不了.所以很多国内的开发者,不得不去使用 AndroidPN 这 ...

  9. JPush (极光推送) For Xamarin.Android

    http://www.cnblogs.com/xling/p/JPush-for-Xamarin-Android.html 官方教程上讲的是 GCM (Google Cloud Messaging) ...

最新文章

  1. docker 部署redis
  2. python干啥用_用python内置函数能干些什么?
  3. TypeScript里的空值合并运算符(双问号)用法
  4. Hash冲突的解决--暴雪的Hash算法
  5. python 生成排列、组合以及选择
  6. nginx安装与项目发布
  7. mysql addslashes c_addslashes()用途与php怎样防止mysql注入?
  8. 一次U3D DLL加密的记录(一)
  9. MySQL 数据库重装失败最后一步无法启动server的解决办法
  10. 学习Java可以干什么?
  11. 华为首款台式机计算机发布,华为首款商用台式机发布,或再成商用PC市场破局者...
  12. win10浏览器闪退_Win10系统下Edge浏览器经常闪退的解决方法
  13. 远程控制计算机控制不,远程控制电脑为什么打不了字
  14. 个人的偏好与擅长的领域
  15. 【SQL怎么写】查询同一张表中同一个ID对应最新时间的数据记录
  16. 非2的幂,离散傅里叶变化DFT的快速实现
  17. 如何选择合适的渗压计?
  18. 关于Julia1.0及以后版本的for循环产生错误ERROR: UndefVarError: variable not defined的解决方法
  19. 淘宝店铺装修代码大全,淘宝页面设计代码.
  20. steam api dll缺失了怎么办?多种的解决方法

热门文章

  1. 使用超终端连接Cisco 2950交换机步骤,通过console口
  2. 超全面的前端切图技巧,读这篇就够了
  3. word中出现“由于文件许可权错误,word无法完成保存操作”的解决办法
  4. Go环境配置(MAC)
  5. BZOJ 1216 优先队列
  6. 如何使用WPS进行文档内容对比
  7. [4G5G专题-129]:RF-架构演进的驱动力与RF常见术语
  8. csdn最详细最牛逼的 阿里最新app自动化测试---自动化测试框架搭建
  9. 河北软件职业技术学院计算机应用工程系,河北软件职业技术学院第四届模特大赛举办成功...
  10. macOS 13 如何更新?macOS Ventura抢先更新