android、flutter离线推送插件,支持oppo、vivo、小米、华为

项目说明

项目地址:https://github.com/haomiao33/ym_flutter_push

起因

目前github上面搜索发现没有合适的flutter和android 推送原生插件,所以自己参考和借鉴了(https://github.com/taoweiji/MixPush)项目,这个mixpush太老了,我这边更新了不少,去除了不需要的部分,更新了最新的jar和aar。

大家有什么问题可以提issues。

可以搭配配套的im系统:https://github.com/haomiao33/minim

功能

复制代码
1、支持vivo、oppo、华为、小米
2、目前支持获取到regId
3、支持服务端发送推送打开应用首页和子页面(可以附加不同的schema或者intent参数)

集成方法

1、库不需要修改,直接使用项目下的example

2、修改example下如下地方

复制代码
a、在android目录下的gradle.properties 各个值即可:


    EXAMPLE_APPLICATION_ID=com.xiaogongqiu.app
    EXAMPLE_VIVO_APP_ID=XX
    EXAMPLE_VIVO_APP_KEY=XX
    EXAMPLE_MI_APP_ID=XX
    EXAMPLE_MI_APP_KEY=XX
    EXAMPLE_OPPO_APP_KEY=XX
    EXAMPLE_OPPO_APP_SECRET=XX
    EXAMPLE_MEIZU_APP_ID=XX
    EXAMPLE_MEIZU_APP_KEY=XX

b、修改android app目录下build.gradle android.jks是自己的apk签名,改成自己的就行:
     signingConfigs {
        release {
            keyAlias 'key0'
            keyPassword "xxxx"
            storePassword "xxxx"
            storeFile file('android.jks')
        }
    }

c、替换改android app 目录下华为推送配置文件 arconnect-services.json 文件,替换成自己的。

d、修改app/src/AndroidManifest.xml 包名改成自己的(这个是属于小米的部分配置):
     <permission
        android:name="com.xiaogongqiu.app.permission.MIPUSH_RECEIVE"
        android:protectionLevel="signature" />
    <uses-permission android:name="com.xiaogongqiu.app.permission.MIPUSH_RECEIVE" />

e、 这个属于定义打开的activity的 scheme,可以自己定义,不过小米、vivi、oppo、华为有的使用时intent参数有的是使用scheme。
   <intent-filter>
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>
            <data
                android:scheme="ymappscheme"
                android:host="com.xiaogongqiu.app"
                android:path="/message"
                />
        </intent-filter>
相关推荐
2601_9620654926 分钟前
PHP For 循环
android·java·php
码农coding1 小时前
android12 WindowManagerService窗口的添加过程
android
小小测试开发1 小时前
RAG评测指标实战:忠实度、上下文精确率/召回率从原理到CI落地
android·人工智能·spring boot·ci/cd
Dovis(誓平步青云)2 小时前
同一条路线在手机和平板上怎样换一种排版
android·开发语言·数据库·智能手机·音视频
firstacui2 小时前
Mysql调优
android·mysql·adb
程序员-Benothing3 小时前
什么是 MySQL 的主从同步机制?它是如何实现的?
android·数据库·mysql
Android打工人3 小时前
c++ 、java 融为一体2,c++ 实例化Android虚拟机直接运行java,c,java 一个进程号
android·java·c++
IT毕设实战小研3 小时前
基于安卓的考研资讯系统设计与实现
android·大数据·vue.js·爬虫·python·考研·课程设计
ljt27249606614 小时前
Flutter笔记--envied
前端·笔记·flutter
Mr数据杨11 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发