有米Android SDK开发者文档( 七 )


5.3 奖励积分(可选)
当用户连续n天登录或通过了某关卡时,您可以使用以下接口奖励用户一定额度的积分 。
代码示例:
import android.app.Activityimport net.youmi.android.offers.PointsManager;...//调用awardPoints可以奖励指定金额的积分,这里示例奖励50积分PointsManager.getInstance(this).awardPoints(50);Log.d("test","已成功奖励50积分");...
5.4 监听积分余额变动
SDK提供了监听积分余额变动接口,方便UI自动刷新显示变动的积分余额 。
监听积分变动的UI相关的类必须 接口,并且需要在初始化及关闭时分别调用的和接口示例如下:
package com.testimport net.youmi.android.offers.OffersManager;import net.youmi.android.offers.PointsChangeNotify;import net.youmi.android.offers.PointsManager;import android.app.Activity;public class YourTestActivity extends Activity implements PointsChangeNotify { @Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);//注意:请务必调用registerNotify来注册监听器,否则将得不到积分账户余额变动的通知 。PointsManager.getInstance(this).registerNotify(this);}@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();//注意:请务必在onDestroy中调用unRegisterNotify来注销监听PointsManager.getInstance(this).unRegisterNotify(this);} @Overridepublic void onPointBalanceChange(int pointsBalance) {// TODO Auto-generated method stub//当该方法被调用时,表示积分账户余额已经变动了,这里的pointsBalance是积分的当前余额数Log.d("test","积分账户余额已变动,当前余额为:"+pointsBalance);//注:您可以在这里进行更新界面显示等操作,}}
6.监听积分赚取订单 (可选)
上文提到的监听积分余额变动只是用于监听SDK托管积分账户的余额变动,如果您希望监听用户赚取积分的订单详情,您可以使用监听积分赚取订单接口 。
首先,您需要定义一个类(名字可以随意),它必须继承自:
示例代码:
package com.test;import android.content.Context;import net.youmi.android.offers.EarnPointsOrderList;import net.youmi.android.offers.PointsReceiver; public class MyPointsReceiver extends PointsReceiver{@Overrideprotected void onEarnPoints(Context context, EarnPointsOrderList list) {//当SDK获取到用户赚取积分的订单时,会第一时间调用该方法通知您 。//参数EarnPointsOrderList是一个积分订单列表,您可以在这里处理积分详细订单 。}@Overrideprotected void onViewPoints(Context context) {//这里是个有趣的小功能,当用户赚取积分之后,积分墙SDK会在通知栏上显示一条获取积分的提示,如果用户点击了这个通知,该函数会被调用 。//这时候您可以在这里实现一个跳转,让用户跳转到您设计好的一个积分账户余额页面(如"我的账户"之类的Activity) 。//该操作是可选的,如果需要关闭通知栏积分提示,请调用PointsManager.getInstance(context).setEnableEarnPointsNotification(false) }}
下一步,您需要在.xml上配置刚刚定义的 :
示例代码: