乐趣区

关于apicloud:在APICloud开发平台使用友盟统计功能教程

APICloud 开发平台模块库中的 umAnalytics 模块封装了友盟 APP 统计 SDK。实现了友盟统计性能,包含启动次数、事件、页面等 app 数据的统计。模块的应用步骤次要如下:

1、注册账号,开发者到友盟官网注册本人的账号

2、进入官网点击挪动统计创立利用并获取 AppKey

3、如果须要自定义事件统计,需进入利用,而后点击 设置 => 事件 =\> 增加事件

4、配置 config.xml 文件

一个 App 须要同时反对 iOS 和 Android 平台,则必须独自申请各自的 appKey,并同时配置在 config 文件中,Android 渠道和 iOS 渠道别离标注

<feature name="umAnalytics">
     // ios_appkey: 通过友盟挪动统计网站取得 iOS 零碎的 key
    <param name="ios_appkey" value="*************"/>
  // iOS 渠道号
    <param name="ios_channel" value="******"/>
    // 通过友盟挪动统计网站取得 Android 零碎的 key
    <param name="android_appkey" value="***********"/>
    // Android 的渠道号
    <param name="android_channel" value="******"/>
</feature>

5、常见问题的索引  https://community.umeng.com/

6、留神

在 APICloud 开发平台应用时不能与 umengAnalytics、umengTJ 模块独特应用,同时因为 Google Play 及国内的一些 app store 审查的起因,自模块版本 1.0.5 后,新增接口 config、onResume、onPause,在原先初始化(init)之前须要调用 config 接口, 并且须要在监听到 app 主页面启动后调用 onResume、onPause 接口

引入的代码也比较简单,示例如下:

apiready = function () {var umAnalytics = api.require('umAnalytics');
        if (systemType == 'android') {umAnalytics.config();
        }
        umAnalytics.init();
        api.addEventListener({name: 'resume'}, function (ret, err) {umAnalytics.onResume();
        });
        api.addEventListener({name: 'pause'}, function (ret, err) {umAnalytics.onPause();
        });
}

引入后编译正式包,客户下载安装,在友盟后盾就能够统计到用户的相干信息

此外,友盟模块反对自定义事件,须要提前在统计平台上定义事件;自定义事件能够实现在应用程序中埋点来统计用户的点击行为。自定义事件目前包含“计数事件”和“计算事件”。应用自定义事件性能请先登陆友盟 + 官网,在“统计分析 -> 设置 -> 事件”(子账户因为权限限度可能无奈看到“设置”选项,请分割主帐号开明权限。)页面中增加相应的事件 id,而后服务器才会对相应的事件申请进行解决。

// 应用计数事件须要在后盾增加事件时抉择“计数事件”。例:统计微博转发次数
// 计数事件 1:统计产生次数(只有 eventId 一个参数时)var umAnalytics = api.require('umAnalytics');
        umAnalytics.onEvent({eventId: 'Forward',},function(ret, err){if(ret.status){alert(JSON.stringify(ret));
             }else{alert(JSON.stringify(err));
             }
        });

   // 计数事件 2:统计点击行为各属性被触发的次数(有 eventId、attributes 两个参数时)// 例:统计购买商品类型为 book,数量为 3 本
    var umAnalytics = api.require('umAnalytics');
        umAnalytics.onEvent({
             eventId: 'purchase',
             attributes: {
                    type: 'book',
                    quantity: '3'
             }
        },function(ret, err){if(ret.status){alert(JSON.stringify(ret));
             }else{alert(JSON.stringify(err));
             }
        });

    // 计算事件:应用计算事件须要在后盾增加事件时抉择“计算事件”(字符串型);统计数值型变量的值的散布(有 eventId、attributes、counter 三个参数时)// 示例:购买《Swift Fundamentals》这本书,花了 110 元
    var umAnalytics = api.require('umAnalytics');
        umAnalytics.onEvent({
             eventId: 'pay',
             attributes: {book: '《Swift Fundamentals》'},
             counter: 110,
        },function(ret, err){if(ret.status){alert(JSON.stringify(ret));
             }else{alert(JSON.stringify(err));
             }
        });

自定义页面须要调用 onPageStart 和 onPageEnd 办法,而且必须成对应用,其中 onPageStart 办法不会随页面关上主动调用,肯定要在页面的初始化中写入。onPageEnd 办法不会随页面敞开主动调用,须要写在敞开页面的 api.closeWin() 或 api.closeFrame() 办法前无效。

具体示例代码如下:

var umAnalytics = api.require('umAnalytics');
umAnalytics.onPageStart({pageName: '页面名称',}, function(ret, err) {if (ret) {alert(JSON.stringify(ret));
    } else {alert(JSON.stringify(err));
    }
});

var umAnalytics = api.require('umAnalytics');
umAnalytics.onPageEnd({pageName: '页面名称',}, function(ret, err) {if (ret) {alert(JSON.stringify(ret));
    } else {alert(JSON.stringify(err));
    }
});

友盟在统计用户时以设施为主,如果须要统计利用本身的账号,能够应用登录接口 profileSignInWithPUID 和退出 profileSignOff 接口,代码如下:

var umAnalytics = api.require('umAnalytics');
        umAnalytics.profileSignInWithPUID({
            userID:'000593',
            provider:"大通燃气"
        },function(ret,err){if(ret){alert(JSON.stringify(ret));
             }else{alert(JSON.stringify(err));

             }
        });

var umAnalytics = api.require('umAnalytics');
        umAnalytics.profileSignOff(function(ret){if(ret){alert(JSON.stringify(ret));
            }
        });

更多办法和细节请参考,模块文档 https://docs.apicloud.com/Cli…

退出移动版