安装Smart SDK(Android)/普通安装
选择“普通安装”,点击<下载Smart SDK for Android(版本)>按钮下载最新版本的Smart SDK安装包。
提示: 支持Android4.0及其以上,Android8.0及其以下版本
检查安装环境
安装Smart SDK时,请检查您的操作系统、开发环境、JDK、Android SDK等是否符合要求:
操作系统:Windows xp至Windows 10、Mac、Linux。
开发环境:目前支持Eclipse(3.8及以上)、Android Studio(1.0及以上)。
JDK:JDK1.6及以上。
Android SDK:目前支持Android SDK的build-tools 版本为19.0.0至24.0.0。
解压下载的安装包后,开始安装Smart SDK,目前支持在Windows、Linux和Mac环境中安装使用,详细说明如下。
解压安装包后,双击运行install.bat脚本文件,打开命令窗口安装向导,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框。选择并打开Android SDK的安装文件夹后,安装Smart SDK,安装成功后显示如下界面。
注意:Android SDK 路径中不能包含空格和特殊字符。
解压下载的安装包后,通过命令行定位到lib目录下,执行java -jar install.jar命令,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框。选择并打开Android SDK的安装文件夹后,安装Smart SDK,安装成功后显示如下界面。
注意: Android SDK路径中不能包含空格和特殊字符。
解压安装包后,通过命令行定位到lib目录下,执行java -jar install.jar命令,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框。选择并打开Android SDK的安装文件夹后,安装Smart SDK,安装成功后显示如下界面。
Android SDK路径中不能包含空格和特殊字符。
安装Smart SDK后,需要在开发环境中配置待监控App的工程。Smart SDK(Android)在不同开发环境中的配置内容稍有不同,下面分别介绍在Eclipse环境和Android studio环境中的配置以及在Android studio环境中gradle插件集成过程。
添加工程文件
将安装包中的cloudwise-mobile-distribute-1.6.2.jar文件添加到工程的libs目录下,将cloudwise-mobile.xml文件添加到工程的assets目录下,如下图所示。
添加成功后,把cloudwise-mobile-distribute-1.6.2.jar加入build path,如下图所示。
添加App Key并修改数据发送地址
在cloudwise-mobile.xml文件中,添加创建应用时生成的App Key,如下图所示:此外,您还可以根据提示设置以下内容:
是否启用debug:如果您在测试时需要使用可设置为true,但在正式发布App时强烈建议设置为false。
设置渠道号
在AndroidManifest.xml文件中,添加以下代码到<application>中,其中Android:name为CloudwiseChannel,Android:value为渠道名称,可以自定义设置。
<meta-data android:name="CloudwiseChannel" android:value="渠道名称"></meta-data>
设置网络权限
在AndroidManifest.xml文件中,添加以下命令到<application></application>前面,从而使App具有访问网络和网络信息的权限。
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" />
设置混淆
如果您的App工程使用了混淆,为了保证Smart SDK可以正常使用,请在proguard-project.txt文件的最后添加以下命令:
-keep class com.cloudwise.agent.app.** {*;} -dontwarn com.cloudwise.agent.app.** -keepattributes Exceptions, Signature, InnerClasses
集成Cloudwise NDK
如果要对Native类型的崩溃信息进行解析和还原,您还需要集成Cloudwise NDK,请点击下面的链接进行下载。
注:目前Cloudwise的SO库(libCloudwise.so)支持armeabi、armeabi-v7a架构、arm64-v8a和x86CPU架构。如果libs架构数与上述架构不一致,可能会出现“java.lang.UnsatisfiedLinkError”异常。
下载后解压zip包,按如下方式进行集成:
将Cloudwise NDK中libs目录对应的CPU架构目录下的SO库(libCloudwise.so)复制到应用工程中libs目录对应的CPU架构目录下即可,如下图所示
集成libcurl.so库
如果coco2d-x App需要监控CURL网络协议,需要替换libcurl.so库,具体的替换方式如下:
请点击下面的链接下载我们的libcurl.a文件,然后使用该文件替换应用工程中jni目录CPU架构目录下的libcurl.a文件。
注:libcurl.a目前只支持armeabi和armeabi-v7a两种CPU架构。
编译工程
配置完成后,clean当前App工程并重新编译工程即可。
添加工程文件
将安装包中的cloudwise-mobile-distribute-1.6.2.jar文件添加到工程的libs目录下,将cloudwise-mobile.xml文件添加到工程的assets目录下,如下图所示。
提示:App工程中没有assets目录时,首先在src/main目录下新建一个目录并命名为assets,然后再将文件拖拽到该目录下即可。
添加App Key并修改数据发送地址
在cloudwise-mobile.xml文件中,添加创建应用时生成的App Key,如下图所示:
此外,您还可以根据提示设置以下内容:
是否启用debug:如果您在测试时需要使用可设置为true,但在正式发布App时强烈建议设置为false。
设置渠道号
在AndroidManifest.xml文件中,添加以下代码到<application>中,其中Android:name为CloudwiseChannel,Android:value为渠道名称,可以自定义设置。
<meta-data android:name="CloudwiseChannel" android:value="渠道名称"></meta-data>
设置网络权限
在AndroidManifest.xml文件中,添加以下命令到<application></application>前面,从而使App具有访问网络和网络信息的权限。
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" />
设置混淆
如果您的App工程使用了混淆,为了保证Smart SDK可以正常使用,请在proguard-project.txt文件的最后添加以下命令:
-keep class com.cloudwise.agent.app.** {*;} -dontwarn com.cloudwise.agent.app.** -keepattributes Exceptions, Signature, InnerClasses
集成Cloudwise NDK
如果要对Native类型的崩溃信息进行解析和还原,您还需要集成Cloudwise NDK,请点击下面的链接进行下载。
注:目前Cloudwise的SO库(libCloudwise.so)支持armeabi、armeabi-v7a架构、arm64-v8a和x86CPU架构。如果libs架构数与上述架构不一致,可能会出现“java.lang.UnsatisfiedLinkError”异常。
如果项目中已经有SO库使用的情况,下载后解压zip包, 将Cloudwise NDK中libs目录下的全部内容(CPU架构目录及对应的SO库libCloudwise.so)拷贝到应用项目现有的so库对应的目录即可。
如果项目中没有SO库使用的情况,下载后解压zip包,将Cloudwise NDK 中的libs目录下的全部内容(CPU架构目录及对应的SO库libCloudwise.so)拷贝到app (类似eclipse中的project)目录下的libs文件下,如下图所示:
然后,在相应的build.gradle(module:APP)文件中添加如下代码:
sourceSets { main { jniLibs.srcDirs = ['libs'] } }
具体如下图:
集成libcurl.so库
如果coco2d-x App需要监控CURL网络协议,需要替换libcurl.so库,具体的替换方式如下:
请点击下面的链接下载我们的libcurl.a文件,然后使用该文件替换应用工程中jni目录CPU架构目录下的libcurl.a文件。
注:libcurl.a目前只支持armeabi和armeabi-v7a两种CPU架构。
编译工程
配置完成后,clean当前App工程并重新编译工程即可。