背景
很长一段时间内,都是直接使用的官方的demo进行原生手动集成,但是umeng官方很长时间都没有更新了,sdk较老,并且缺失了很多方法,譬如小程序的分享,所以自己动手封装了友盟的统计、分享、授权,并且是以npm包的形式提供,免去手动集成的那些复杂的步骤(当然由于分享涉及到的第三方平台较多,原生还是需要更改很多东西,不过该库在文档中已经说明的较清楚了)
功能
相比官方的demo
npm包形式提供
完全typescript化
完全Promise化(官方的demo是callback形式)
支持所有的分享模式
(除了emoji分享)支持分享面板的自定义传参
适配最新的umeng的sdk
Api
AnalyticsUtil
名称 | 描述 |
---|---|
手动页面统计接口 | onPageStart (pageName: string) |
手动页面统计接口 | onPageEnd (pageName: string) |
自定义事件 | onEvent (eventId: string) |
自定义事件 | onEventWithLable (eventId: string, eventLabel: string) |
自定义事件 | onEventWithMap (eventId: string, eventData: {[key:string]: string}) |
自定义事件 | onEventWithMapAndCount (eventId: string, eventData: {[key:string]: string}, eventNum:number) |
自定义事件 | onEventObject (eventId: string, eventData: {[key:string]: any}) |
注册预置事件属性 | registerPreProperties (property: {[key:string]: any}) |
注销预置事件属性 | unregisterPreProperty (propertyName: string) |
获取预置事件属性 | getPreProperties (callback: (result: string)=>void) |
清空全部预置事件属性 | clearPreProperties () |
设置关注事件是否首次触发 | setFirstLaunchEvent (eventList: Array) |
账号的统计 | profileSignInWithPUID (puid: string) |
账号的统计 | profileSignInWithPUIDWithProvider (provider: string, puid: string) |
账号登出 | profileSignOff () |
ShareUtil
相比AnalyticsUtil
,ShareUtil
基本完全改造了,根据传参的不一样调用不同的分享
名称 | 描述 |
---|---|
分享 | share (shareStyle: SHARE_STYLES, shareObject: BaseMediaObject) |
授权 | auth (shareMedia: SHARE_MEDIAS) |
支持的分享方式:
名称 | 描述 |
---|---|
LINK | 网页链接(网页H5链接) |
WEIXIN_MINI_PROGRAM | 微信小程序 |
QQ_MINI_PROGRAM | QQ小程序 |
IMAGE | 单图 |
TEXT | 纯文本 |
MULITI_IMAGE | 多图(多图要包含文字描述) |
VIDEO | 视频 |
MUSIC | 音乐 |
Emotion | 表情(GIF图片,即Emotion类型,只有微信支持)(暂未实现) |
支持的分享平台:
QQ、SINA、WEIXIN、WEIXIN_CIRCLE、QZONE... 具体查看u-share官方
详细
具体的用法,直接查看,如果有用,麻烦star一下