Data report
Unity3D
Outline
Access Guide
User-defined Data report
FAQ
Android
Outline
Access Guide
User-defined Data report
FAQ
IOS
Outline
Access Guide
User-defined Data report
FAQ
Others
Data Structure
System Tools
Data report / Unity3D / Outline

Outline

Beacon is a mobile APP operation platform which centers on quality control and user analysis. MSDK integrates beacon SDK components inside it. Through our encapsulated interfaces, you can report your custom event data.

Through statistics on the massive reporting data, Beacon mainly focuses on the following aspects to help improve the quality of APP:

1) Custom events Flexibly customize events and analyze the quality performance of product features in the actual user environment

2) Terminal information Completely grasp users' hardware distribution, geographical and network information distribution

3) User behavior Offer multidimensional, massive user analysis, helping you better understand users from a variety of perspectives

4) User portrait Accurately draw the user portrait in combination with years of accumulation of wireless data.

For detailed description, please refer to Beacon's official website http://beacon.tencent.com/ (Access through the Intranet, and the Tencent operation interface administrator may assist you in your search)

Access Guide

Starting from MSDK 3.3.25, Beacon and Qimei SDK are provided in the form of plug-ins and support flexible replacement.

Android related jars and `so` include:

  • beacon-android-release-x.x.x.x(version number)-official.jar //Beacon SDK core library
  • libqmp.so //Beacon SDK so
  • qimei-x.x.x.x(version number).jar //Qimei SDK core library
  • libbeaconid.so //Qimei SDK so

iOS when using them, you need to add other frameworks in the MSDKBeacon/Beacon directory in addition to adding MSDKBeacon/MSSDKBeacon.framework.

Starting from MSDK 3.3.28, libbeaconid.so (Qimei SDK so file) in Android Qimei SDK is replaced by libqimei.so.

1 Preconditions

1) You have registered games on Tencent open platform and passed the audit, or your staff in contact with Tencent have helped you register games through internal channels.

2) You have completed access configuration by fthe instructions for accessing the configuration module.

3) Your game has the privilege of accessing the lighthouse. When applying for the lighthouse access privilege, corresponding Tencent operation interface administrator shall get in touch with the corporate WeChat account of Lighthouse Assistant.

2 Refer to demos

For examples of user-defined data reporting, please refer to ReportEventTest section of Assets\Example\MsdkDemo.cs script.

User-defined data reporting

1 Summary

You can report custom event data through the interfaces provided by MSDK. The reported data can be viewed through Beacon's official websitehttp://beacon.tencent.com/ (access through the Intranet, and the Tencent operation interface administrator may assist you in your search). The data can be queried 5 minutes later after being reported.

2 Registration callback

None

3 Interface calling

1)Function description

Report custom events

2)Interface declaration
void WGReportEvent(string name, Dictionary<string, string> eventList, bool isRealTime);     
3)Parameter description
Parameter name Type Description
name String event name, maximum length 128
List Dictionary<string, string> event content, a key-value form of Dictionary,
key's maximum length is 64,value's maximum length 1024,key's maximum number is 50,
It is recommended that key should be named with "B1" and "B2" rules to reduce traffic consumption
isRealTime bool Whether to report in real time or not? The non-real-time reporting content will be cached in the local; report in batch
4)Return value

None

5)Demo code
    string name = "ReportEventTest";
    Dictionary<string, string> data = new Dictionary<string, string>();
    data.Add("key1", "values1");
    data.Add("key2", "values2");
    WGPlatform.Instance.WGReportEvent(name, data, true);
6)Special description

None

7)Term interpretation

None

FAQ

Android Beacon 4.2.80.6 and above (MSDK 3.3.25 and above) Notes

Beacon 4.2.80.6 started,Qimei SDK gets independent from Beacon SDK; you need to set the `Qimei` special field before setting Beacon on the Android side, otherwise this can affect the information reporting of Beacon.

      QimeiSDK.getInstance("appkey1").getStrategy()
            .enableOAID(true)           // disable `oaid` collection, and set it to false here
            .enableIMEI(true)           // disable `imei` collection, and set it to false here; it is recommended to collect such information as much as possible if the user authorizes such collection, so as to facilitate the review of the problem
            .enableIMSI(true)           // disable `imsi` collection, and set it to false here
            .enableAndroidId(true)      // disable `android id` collection, and set it to false here; it is recommended to collect such information as much as possible if the user authorizes such collection, so as to facilitate the review of the problem
            .enableMAC(true)            // disable `mac` collection, and set it to false here
            .enableCid(true);           // disable `cid` collection, and set it to false here
            .enableProcessInfo(true)    // disable the application list enumeration, and set it to false here; valid for versions above 1.0.5
            .enableBuildModel(true)     // disable BUILD.MODEL collection, and set it to false here; valid for versions above 1.2.3

Note,that MSDK sets all the above fields to false by default, so that MSDK including Beacon will not actively collect them, but rely on the game to collect them. After the user agrees, the game will collect them in any of the following ways:

  • The game directly reflects and invokes Beacon or Qimei `set` interface to set special fields
  • Enable and set special field reporting through the MSDKSensitive interface provided by MSDK

Among them, the process of setting special fields through MSDK is as follows:

    std::string sensitiveInfo = "{\"AndroidID\":\"xxx\", \"WiFiMacAddress\":\"xxx\", \"Model\":\"xxx\", \"Oaid\":\"xxx\", \"Imsi\":\"xxx\", \"Cid\":\"xxx\"}";  //pass in special fields in json format; not passing in the `Model` value can affect the effect of Beacon's mid-ground algorithm
    MSDKSensitive::SetSensitiveInfo(sensitiveInfo); //set special information

You can see the corresponding field information in the Beacon real-time joint test. For the specific field key-value, please refer to: https://doc.weixin.qq.com/sheet/e3_m_FQqjSTulsZmQ?scode=AJEAIQdfAAoYCcswsTAP0AIgaEACc&tab=p142s5

Beacon integration considerations

Refer to:https://doc.weixin.qq.com/doc/w3_AOQADAbbACgqJ91uqbMRnKuobyvnZ?scode=AJEAIQdfAAosBHFrxzAOQADAbbACg](https://doc.weixin.qq.com/doc/w3_AOQADAbbACgqJ91uqbMRnKuobyvnZ?scode=AJEAIQdfAAosBHFrxzAOQADAbbACg