diff --git a/plugin/plugins/umeng/proj.android/sdk/umeng_sdk.jar b/plugin/plugins/umeng/proj.android/sdk/umeng_sdk.jar index 43d2d97a7823..ac5e2e30a4c3 100644 Binary files a/plugin/plugins/umeng/proj.android/sdk/umeng_sdk.jar and b/plugin/plugins/umeng/proj.android/sdk/umeng_sdk.jar differ diff --git a/plugin/plugins/umeng/proj.android/src/org/cocos2dx/plugin/AnalyticsUmeng.java b/plugin/plugins/umeng/proj.android/src/org/cocos2dx/plugin/AnalyticsUmeng.java index 37185a21f96f..278d9e2c6bc9 100644 --- a/plugin/plugins/umeng/proj.android/src/org/cocos2dx/plugin/AnalyticsUmeng.java +++ b/plugin/plugins/umeng/proj.android/src/org/cocos2dx/plugin/AnalyticsUmeng.java @@ -23,7 +23,10 @@ of this software and associated documentation files (the "Software"), to deal ****************************************************************************/ package org.cocos2dx.plugin; +import java.util.HashMap; import java.util.Hashtable; +import java.util.Iterator; + import android.content.Context; import android.util.Log; @@ -49,6 +52,7 @@ protected static void LogD(String msg) { public AnalyticsUmeng(Context context) { mContext = context; + MobclickAgent.setWrapper("Cocos2d-x", "1.0"); } public boolean isValid() { @@ -101,7 +105,8 @@ public void logEvent(String eventId) { @Override public void logEvent(String eventId, Hashtable paramMap) { LogD("logEvent(eventId, paramMap) invoked!"); - MobclickAgent.onEvent(mContext, eventId, paramMap); + HashMap curParam = changeTableToMap(paramMap); + MobclickAgent.onEvent(mContext, eventId, curParam); } @Override @@ -188,7 +193,8 @@ protected void logEventWithDuration(String eventId, int duration, Hashtable curMap = changeTableToMap(paramMap); + MobclickAgent.onEventDuration(mContext, eventId, curMap, duration); } catch(Exception e){ LogE("Exception in logEventWithDuration,eventId,duration,paramMap", e); } @@ -218,7 +224,8 @@ protected void logTimedKVEventBegin(String eventId, String label, Hashtable curMap = changeTableToMap(paramMap); + MobclickAgent.onKVEventBegin(mContext, eventId, curMap, label); } catch(Exception e){ LogE("Exception in logTimedKVEventBegin", e); } @@ -233,4 +240,16 @@ protected void logTimedKVEventEnd(String eventId, String label) { LogE("Exception in logTimedKVEventEnd", e); } } + + private HashMap changeTableToMap(Hashtable param) { + HashMap retParam = new HashMap(); + for(Iterator it = param.keySet().iterator(); it.hasNext(); ) { + String key = it.next(); + String value = param.get(key); + + retParam.put(key, value); + } + + return retParam; + } }