Android 信鸽推送集成

简介: Android 信鸽推送集成

Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 20 declared in library [com.tencent.mid:mid:4.0.7] C:\Users\Administrator\.gradle\caches\transforms-1\files-1.1\mid-4.0.7.aar\940566913b33e9d01791f180c556560b\AndroidManifest.xml as the library might be using APIs not available in 16
  Suggestion: use a compatible library with a minSdk of at most 16,
    or increase this project's minSdk version to at least 20,
    or use tools:overrideLibrary="com.example.mid" to force usage (may lead to runtime failures)

要minSdk最小为20,但是现阶段4.+的手机系统版本还是有不少的,放弃是不可能的,在Manifest中配置uses-sdk也是无果,直接集成3.+也并无大碍。


官方文档:http://xg.qq.com/docs/android_access/jcenter.html


创建应用

注册登录官网,添加应用,拿到配置参数


导入依赖

在app build.gradle文件下配置 以下内容


android {
        ......
        defaultConfig {
            //信鸽官网上注册的包名.注意application ID 和当前的应用包名以及 信鸽官网上注册应用的包名必须一致。
            applicationId "你的包名" 
            ......
            ndk {
                //根据需要 自行选择添加的对应cpu类型的.so库。 
                abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a' 
                // 还可以添加 'x86', 'x86_64', 'mips', 'mips64'
            }
            manifestPlaceholders = [
                XG_ACCESS_ID:"注册应用的accessid",
                XG_ACCESS_KEY : "注册应用的accesskey",
            ]
            ......
        }
        ......
    }
    dependencies {
        ......
    //信鸽3.2.5之前版本无需单独依赖'com.tencent.jg:jg:1.1',其它三个依赖必须有。
    //信鸽3.2.6 版本
    //完整的信鸽依赖四个都必须有,如果发生依赖冲突请根据对应的依赖版本号选择高版本的依赖。(使用jcenter自动接入请确认libs中没有信鸽的相关jar包) 
    //信鸽jar
    compile 'com.tencent.xinge:xinge:3.2.6-release'
    //jg包
    compile'com.tencent.jg:jg:1.1'
    //wup包
    compile 'com.tencent.wup:wup:1.0.0.E-release'
    //mid包
    compile 'com.tencent.mid:mid:4.0.6-release'
    }

注意,这里是accessid,不是appid,Android端和ios端的参数配置是有区别的,后台需要的配置参数也是不一样的

如果遇到这个异常:


NDK integration is deprecated in the current plugin. Consider trying the new experimental plugin.

则在 Project 根目录的 gradle.properties 文件中添加:


android.useDeprecatedNdk=true

开启debug日志数据

XGPushConfig.enableDebug(this,true);

token注册

XGPushManager.registerPush(this, new XGIOperateCallback() {
  @Override
  public void onSuccess(Object data, int flag) {
  //token在设备卸载重装的时候有可能会变
  Log.d("TPush", "注册成功,设备token为:" + data);
  }
  @Override
  public void onFail(Object data, int errCode, String msg) {
  Log.d("TPush", "注册失败,错误码:" + errCode + ",错误信息:" + msg);
  }
});

注册成功会有打印,过滤"TPush"


设置账号

XGPushManager.bindAccount(getApplicationContext(), "XINGE");

设置标签

XGPushManager.setTag(this,"XINGE");

到此就基本完成了,不需要配置厂商通道,8.0也是测试通过的。


厂商通道呢,拿华为来说,去华为开发联盟 注册、登录、添加应用一顿操作(测试需要线上测试),然后拿着华为平台的应用参数去信鸽管理台配置参数,然后再在代码中配置华为的appid、依赖、启动华为推送、日志等 一顿操作。



之所以不详细介绍呢,是因为不配置厂商也可以。

其次呢,因为国内厂商的各种系统定制,搞的我们开发者适配很苦恼。

内心也是抗拒的,但是在工作中,碍于资本主义的猖狂,还是做的很开心的(狗头)。

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
3月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
270 1
|
27天前
|
Java 程序员 API
Android|集成 slf4j + logback 作为日志框架
做个简单改造,统一 Android APP 和 Java 后端项目打印日志的体验。
97 1
|
2月前
|
图形学 iOS开发 Android开发
从Unity开发到移动平台制胜攻略:全面解析iOS与Android应用发布流程,助你轻松掌握跨平台发布技巧,打造爆款手游不是梦——性能优化、广告集成与内购设置全包含
【8月更文挑战第31天】本书详细介绍了如何在Unity中设置项目以适应移动设备,涵盖性能优化、集成广告及内购功能等关键步骤。通过具体示例和代码片段,指导读者完成iOS和Android应用的打包与发布,确保应用顺利上线并获得成功。无论是性能调整还是平台特定的操作,本书均提供了全面的解决方案。
152 0
|
3月前
|
开发者 算法 虚拟化
惊爆!Uno Platform 调试与性能分析终极攻略,从工具运用到代码优化,带你攻克开发难题成就完美应用
【8月更文挑战第31天】在 Uno Platform 中,调试可通过 Visual Studio 设置断点和逐步执行代码实现,同时浏览器开发者工具有助于 Web 版本调试。性能分析则利用 Visual Studio 的性能分析器检查 CPU 和内存使用情况,还可通过记录时间戳进行简单分析。优化性能涉及代码逻辑优化、资源管理和用户界面简化,综合利用平台提供的工具和技术,确保应用高效稳定运行。
84 0
|
3月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
全面解析TensorFlow Lite:从模型转换到Android应用集成,教你如何在移动设备上轻松部署轻量级机器学习模型,实现高效本地推理
【8月更文挑战第31天】本文通过技术综述介绍了如何使用TensorFlow Lite将机器学习模型部署至移动设备。从创建、训练模型开始,详细演示了模型向TensorFlow Lite格式的转换过程,并指导如何在Android应用中集成该模型以实现预测功能,突显了TensorFlow Lite在资源受限环境中的优势及灵活性。
250 0
|
6月前
|
Java 开发工具 Android开发
Android mk 集成app
Android mk 集成app
54 5
|
6月前
|
安全 物联网 Android开发
构建未来:Android与IoT设备的无缝集成
【5月更文挑战第10天】 在数字化时代的浪潮中,智能设备与互联网的结合日益紧密。本文深入探讨了Android系统如何通过其开放性和灵活性成为连接物联网(IoT)设备的关键枢纽。我们将分析Android平台与IoT设备集成的技术途径,探索它们如何共同塑造智能家居、可穿戴技术以及工业自动化等领域的未来。文中不仅阐述了当前的发展状况,还展望了未来的发展趋势,特别是安全性和隐私保护方面的挑战及对策。
140 1
|
5月前
|
文字识别 Android开发 C++
Tesseract OCR集成Android Studio实现OCR识别
Tesseract OCR集成Android Studio实现OCR识别
311 0
|
6月前
|
安全 Android开发 iOS开发
构建未来:安卓与iOS的无缝集成技术探索
【5月更文挑战第20天】随着智能设备的普及和技术的不断进步,安卓和iOS两大操作系统之间的界限正在逐渐模糊。本文将深入探讨如何通过最新的API、框架和工具实现安卓与iOS应用的无缝集成,以及这一趋势对开发者和用户的潜在影响。我们将从技术可行性、安全性挑战、用户体验优化等角度出发,分析当前的发展状况,并展望未来可能的技术融合路径。
|
6月前
|
存储 监控 安全
打造高效移动办公环境:Android与iOS平台的集成策略
【5月更文挑战第15天】 在数字化时代,移动办公不再是一种奢望,而是日常工作的必需。随着智能手机和平板电脑的性能提升,Android与iOS设备已成为职场人士的重要工具。本文深入探讨了如何通过技术整合,提高两大移动平台在企业环境中的协同工作能力,重点分析了各自平台上的系统集成策略、安全性考虑以及跨平台协作工具的应用。通过对现有技术的剖析与案例研究,旨在为读者提供一套实用的移动办公解决方案。