小米推送是小米公司推出的,优秀的推送服务,在项目中,我使用了小米的推送服务,记录下来,供其他同学参考。
1.注册小米开发者账号,创建自己的应用,获取应用的appid等信息。
2.添加依赖库
在app/build.gradle文件中引用个推SDK依赖库
implementation files('libs/MiPush_SDK_Client_3_6_2.jar')
3.配置小米推送参数
/**
* 小米配置
*/
// user your appid the key.
private val APP_ID = "***********"
// user your appid the key.
private val APP_KEY = "**************"
4.向后台注册自己的账号
sp = getSharedPreferences("xiaomi", Context.MODE_PRIVATE)
val deviceId = sp!!.getString("mRegId", mRegId)
Log.e("sds", "测试出来的++++" + deviceId!!)
Log.e("dsd", "et++++" + et!!.text.toString())
val customerId = et!!.text.toString()
json = JSONObject()
json!!.put("customerId", customerId)
json!!.put("deviceId", deviceId)
json!!.put("supplierId", "204")
提交账号:
OkHttpUtils
.postString()
.url(NetApi.url)
.content(json.toString())
.mediaType(MediaType.parse("application/json; charset=utf-8"))
.build()
.execute(MyStringCallback())
5.获取点击事件,向后台发送回执
override fun onReceiveMessage(context: Context?, message: MiPushMessage?){
Log.e("dad","我点击了小米的消息5")
Log.e("sdfs","小米的信息"+ message)
Log.e(".sds","extardedede"+message!!.extra.get("msgIdXM"))
sp = DemoApplication.mContext!!.getSharedPreferences("xiaomi", Context.MODE_PRIVATE)
val deviceId = sp.getString("mRegId",mRegId)
Log.e("sdfs","小米的信息deviceId" + deviceId)
json = JSONObject()
try {
json.put("deviceId", deviceId)
json.put("msgId", message.extra.get("msgIdXM"))
} catch (e: JSONException) {
e.printStackTrace()
}
Log.e("dad","我点击了小米的消息5")
OkHttpUtils
.postString()
.url(NetApi.url_Send)
.content(json.toString())
.mediaType(MediaType.parse("application/json; charset=utf-8"))
.build()
.execute(MyStringCallback())
}
6.配置manifest
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.VIBRATE"/>
<permission android:name="com.xiaomi.mipushdemo.permission.MIPUSH_RECEIVE"
android:protectionLevel="signature" /> <!--这里com.xiaomi.mipushdemo改成app的包名-->
<uses-permission android:name="com.xiaomi.mipushdemo.permission.MIPUSH_RECEIVE" /><!--这里com.xiaomi.mipushdemo改成app的包名-->
完成上述步骤,即可完成使用小米推送向后台注册账号,并获取处理点击事件的功能。