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. The 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
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 callWGReportEvent section of MSDKDemo/src/com/example/module/submodule/OthersFunction.java script.
User-defined data reporting
1 Outline
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 Call interfaces
1)Function description
Report custom events
2)Interface declaration
public static void WGReportEvent(String name, HashMap<String, String> params, boolean isRealTime)
3)Parameter description
Parameter name | Type | Description |
---|---|---|
name | String | event name, maximum length 128 |
params | HashMap< string, string> | event content, a key-value form of HashMap, 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 | boolean | the reporting real-time reporting? Non-real-time reporting will be cached locally; batch reporting |
4)Return value
None
5)Demo code
String name = "ReportEventTest";
HashMap<String, String> params = new HashMap<String, String>();
params.put("key1", "values1");
params.put("key2", "values2");
WGPlatform.WGReportEvent(name, params, true);
6)Special description
None
7)Name interpretation
None
FAQ
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