Skip to content

TalkingData/AppAnalytics_SDK_Hybrid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TalkingData App Analytics Hybrid SDK

App Analytics Hybrid 平台 SDK 由封装层Native SDK两部分构成,目前GitHub上提供了封装层代码,需要从 TalkingData官网 下载最新版的 Android 和 iOS 平台 Native SDK,组合使用。

集成说明

  1. 下载本项目(封装层)到本地;
  2. 访问 TalkingData官网 下载最新版的 Android 和 iOS 平台 App Analytics SDK( Native SDK)
    • 方法1:选择 Hybrid 平台进行功能定制;
    • 方法2:分别选择 Android 和 iOS 平台进行功能定制,请确保两个平台功能项一致;
  3. 将下载的最新版 Native SDK 复制到封装层中,构成完整的 Hybrid SDK。
    • Android 平台
      将最新的 .jar 文件复制到 Android 目录下
    • iOS 平台
      将最新的 .h和.a 文件复制到 iOS 目录下
  4. Native SDK 功能选项对封装层代码进行必要的删减,详见“注意事项”第2条;
  5. 将 Hybrid SDK 集成您需要统计的工程中,并按 集成文档 进行必要配置和功能调用。

注意事项

  1. 分别选择 Android 和 iOS 平台进行功能定制时,请确保两个平台功能项一致。

  2. 如果申请 Native SDK 时只选择了部分功能,则需要在本项目中删除未选择功能对应的封装层代码。
    a) 未选择自定义事件功能则删除以下3部分
    删除 TalkingData.js 文件中如下代码:

    	onEvent:function(eventId) {
    		if (isWebviewFlag) {
    			exec("onEvent", [eventId]);
    		}
    	},
    	onEventWithLabel:function(eventId, eventLabel) {
    		if (isWebviewFlag) {
    			exec("onEventWithLabel", [eventId, eventLabel]);
    		}
    	},
    	onEventWithParameters:function(eventId, eventLabel, eventData) {
    		if (isWebviewFlag) {
    			exec("onEventWithParameters", [eventId, eventLabel, eventData]);
    		}
    	},
    	onEventWithValue:function(eventId, eventLabel, eventData, eventValue) {
    		if (isWebviewFlag) {
    			exec("onEventWithParameters", [eventId, eventLabel, eventData, eventValue]);
    		}
    	},
    

    删除 Android/TalkingDataHTML.java 文件中如下代码:

    	@SuppressWarnings("unused")
    	private void onEvent(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onEventWithLabel(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onEventWithParameters(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onEventWithValue(final JSONArray args) throws JSONException {
    		...
    	}
    
    	private Map<String, Object> toMap(String jsonStr)
    	{
    		...
    	}
    

    删除 iOS/TalkingDataHTML.m 文件中如下代码:

    - (void)onEvent:(NSArray *)arguments {
    	...
    }
    
    - (void)onEventWithLabel:(NSArray *)arguments {
    	...
    }
    
    - (void)onEventWithParameters:(NSArray *)arguments {
    	...
    }
    
    - (void)onEventWithValue:(NSArray *)arguments {
    	...
    }
    

    b) 未选择标准化事件分析功能则删除以下3部分
    删除 TalkingData.js 文件中如下代码:

    var TalkingDataShoppingCart = {
    	...
    };
    
    	onPlaceOrder:function(orderId, amount, currencyType) {
    		if (isWebviewFlag) {
    			exec("onPlaceOrder", [orderId, amount, currencyType]);
    		};
    	},
    	onOrderPaySucc:function(orderId, amount, currencyType, payType) {
    		if (isWebviewFlag) {
    			exec("onOrderPaySucc", [orderId, amount, currencyType, payType]);
    		};
    	},
    	onCancelOrder:function(orderId, amount, currencyType) {
    		if (isWebviewFlag) {
    			exec("onCancelOrder", [orderId, amount, currencyType]);
    		};
    	},
    	onViewItem:function(itemId, category, name, unitPrice) {
    		if (isWebviewFlag) {
    			exec("onViewItem", [itemId, category, name, unitPrice]);
    		};
    	},
    	onAddItemToShoppingCart:function(itemId, category, name, unitPrice, amount) {
    		if (isWebviewFlag) {
    			exec("onAddItemToShoppingCart", [itemId, category, name, unitPrice, amount]);
    		};
    	},
    	onViewShoppingCart:function(shoppingCart) {
    		if (isWebviewFlag) {
    			exec("onViewShoppingCart", [shoppingCart]);
    		};
    	},
    

    删除 Android/TalkingDataHTML.java 文件中如下代码:

    import com.tendcloud.tenddata.ShoppingCart;
    
    	@SuppressWarnings("unused")
    	private void onPlaceOrder(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onOrderPaySucc(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onCancelOrder(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onViewItem(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onAddItemToShoppingCart(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onViewShoppingCart(final JSONArray args) throws JSONException {
    		...
    	}
    
    	private ShoppingCart shoppingCartFromJSONObject(JSONObject shoppingCartJson) {
    		...
    	}
    

    删除 iOS/TalkingDataHTML.m 文件中如下代码:

    - (void)onPlaceOrder:(NSArray *)arguments {
    	...
    }
    
    - (void)onOrderPaySucc:(NSArray *)arguments {
    	...
    }
    
    - (void)onCancelOrder:(NSArray *)arguments {
    	...
    }
    
    - (void)onViewItem:(NSArray *)arguments {
    	...
    }
    
    - (void)onAddItemToShoppingCart:(NSArray *)arguments {
    	...
    }
    
    - (void)onViewShoppingCart:(NSArray *)arguments {
    	...
    }
    
    - (TalkingDataShoppingCart *)shoppingCartFromDictionary:(NSDictionary *)shoppingCartDic {
    	...
    }
    

    c) 未选择页面统计功能则删除以下3部分
    删除 TalkingData.js 文件中如下代码:

    	onPage:function(pageName) {
    		if (isWebviewFlag) {
    			exec("onPage", [pageName]);
    		};
    	},
    	onPageBegin:function(pageName) {
    		if (isWebviewFlag) {
    			exec("onPageBegin", [pageName]);
    		}
    	},
    	onPageEnd:function(pageName) {
    		if (isWebviewFlag) {
    			exec("onPageEnd", [pageName]);
    		}
    	},
    

    删除 Android/TalkingDataHTML.java 文件中如下代码:

    	String currPageName = null;
    
    	@SuppressWarnings("unused")
    	private void onPage(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onPageBegin(final JSONArray args) throws JSONException {
    		...
    	}
    	
    	@SuppressWarnings("unused")
    	private void onPageEnd(final JSONArray args) throws JSONException {
    		...
    	}
    

    删除 iOS/TalkingDataHTML.m 文件中如下代码:

    @property (nonatomic, strong) NSString *currPageName;
    
    - (void)onPage:(NSArray *)arguments {
    	...
    }
    
    - (void)onPageBegin:(NSArray *)arguments {
    	...
    }
    
    - (void)onPageEnd:(NSArray *)arguments {
    	...
    }
    

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published