安装Smart SDK之前,您需要在透视宝云端的“配置移动”页面中创建一个应用来获取App Key。为方便查看采集的数据,您需要为App应用设置一个有代表性的名称,可以是中文、英文、数字或三者的任意组合,但不能为空,否则无法获取App Key。
保存应用后,透视宝自动生成对应的App Key,安装Smart SDK时需要使用该App Key,如下图所示。
选择移动平台类型(Android)后,选择安装类型,目前支持普通安装方式、Gradle(Android Studio)插件打包方法、Eclipse插件打包方式、Ant插件打包方式和Maven插件打包方式,下面对普通安装方式进行详细说明,其他方式请参考“插件式安装Android版Smart SDK”。
安装Smart SDK
选择“普通安装”,点击<下载Smart SDK for Android(版本)>按钮下载最新版本的Smart SDK安装包。解压下载的安装包后,开始安装Smart SDK,目前支持在Windows、Linux和Mac环境中安装使用,详细说明如下。
在Windows中安装Smart SDK
解压安装包后,双击运行install.bat脚本文件,打开命令窗口安装向导,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框,选择Android SDK的安装文件夹,如下图所示。
点击<打开>按钮开始安装Smart SDK,安装成功后,显示如下界面。安装后会默认启用Smart SDK来监控App并采集数据。
Android sdk 路径中不能包含空格和特殊字符。
选择Android sdk 路径,安装程序会检查sdk目录下是否存在build-tools目录,如果不存在,会直接返回“Android SDK路径错误,请重新选择!”的提示。
此时,如果要继续安装Smart SDK,需要重新运行install.bat脚本。
要卸载Smart SDK时,运行install.bat脚本文件。按照提示,输入2并按回车键,选择并打开Android SDK路径后,卸载Smart SDK即可。
在Linux环境中安装Smart SDK
解压安装包后,通过命令行定位到lib目录下,执行java -jar install.jar命令,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框并选择Android SDK的安装文件夹。
安装Smart SDK成功后,显示如下界面。安装后会默认启用Smart SDK来监控App并采集数据。
Android sdk 路径中不能包含空格和特殊字符。
选择Android sdk 路径,安装程序会检查sdk目录下是否存在build-tools目录,如果不存在,会直接返回“Android SDK路径错误,请重新选择!”的提示。
此时,如果要继续安装Smart SDK,需要重新执行java -jar install.jar命令即可。
要卸载Smart SDK时,运行install.bat脚本文件。按照提示,输入2并按回车键,选择并打开Android SDK路径后,卸载Smart SDK即可。
在Mac环境中安装Smart SDK
解压安装包后,通过命令行定位到lib目录下,执行java -jar install.jar命令,如下图所示。
按照提示,输入1并按回车键,打开Android SDK路径的选择对话框并选择Android SDK的安装文件夹。
安装Smart SDK成功后,显示如下界面。安装后会默认启用Smart SDK来监控App并采集数据。
Android sdk 路径中不能包含空格和特殊字符。
选择Android sdk 路径,安装程序会检查sdk目录下是否存在build-tools目录,如果不存在,会直接返回“Android SDK路径错误,请重新选择!”的提示。
此时,如果要继续安装Smart SDK,需要重新执行java -jar install.jar命令即可。
要卸载Smart SDK时,运行install.bat脚本文件。按照提示,输入2并按回车键,选择并打开Android SDK路径后,卸载Smart SDK即可。
配置App工程
安装Smart SDK后,需要在开发环境中配置待监控App的工程。Smart SDK(Android)在不同开发环境中的配置内容稍有不同,下面分别介绍在Eclipse环境和Android Studio环境中的配置过程。
配置App工程 — 在Eclipse中配置
添加工程文件
将安装包中的cloudwise-mobile-distribute-1.0.jar文件添加到工程的libs目录下,将cloudwise-mobile.xml文件添加到工程的assets目录下。直接拖拽文件到对应目录下即可,添加成功后可查看对应文件,如下图所示。
添加成功后,把cloudwise-mobile-distribute-1.0.jar加入build path,如下图所示。
添加App Key
在cloudwise-mobile.xml文件中,添加创建应用时生成的App Key,如下图所示。
此外,您还可以根据提示设置以下内容:
是否启用debug:如果您在测试时需要使用可设置为true,但在正式发布App时强烈建议设置为false。
数据提交周期:设置采集数据的提交周期,单位为秒,默认为 60s,可根据实际需要设置合适的时间。
设置网络权限
在AndroidManifest.xml 文件中,添加以下命令,从而使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和x86 CPU架构。如果libs架构数与上述架构不一致,可能会出现“java.lang.UnsatisfiedLinkError”异常。
下载后解压zip包,按如下方式进行集成:
将Cloudwise NDK中libs目录对应的CPU架构目录下的SO库(libCloudwise.so)拷贝到应用工程中libs目录对应的CPU架构目录下即可,如下图所示。
集成libcurl.so库
如果coco2d-x App需要监控CURL网络协议,需要替换libcurl.so库,具体的替换方式如下:
点击页面中的“下载libcurl.a”链接下载zip包。解压缩后,将其中libcurl.a文件文件拷贝至cocos工程中来替换jni目录的CPU架构目录下的libcurl.a文件。
libcurl.a目前只支持armeabi和armeabi-v7a两种CPU架构。
配置App工程 — 在Android Studio中配置
添加工程文件
将安装包中的cloudwise-mobile-distribute-1.0.jar文件添加到工程的libs目录下,将cloudwise-mobile.xml文件添加到工程的assets目录下。直接拖拽文件到对应目录下即可,添加成功后可查看对应文件,如下图所示。
App工程中没有assets目录时,首先在src/main目录下新建一个目录并命名为assets,然后再将文件拖拽到该目录下即可。
添加App Key
在cloudwise-mobile.xml文件中,添加创建应用时生成的App Key,如下图所示。
此外,您还可以根据提示设置以下内容:
是否启用debug:如果您在测试时需要使用可设置为true,但在正式发布App时强烈建议设置为false。
数据提交周期:设置采集数据的提交周期,单位为秒,默认为60s,可根据实际需要设置合适的时间。
设置网络权限
在AndroidManifest.xml 文件中,添加以下命令,从而使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-rules.pro文件的最后添加以下命令:
-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和x86 CPU架构。如果libs架构数与上述架构不一致,可能会出现“java.lang.UnsatisfiedLinkError”异常。
如果项目中已经有SO库使用的情况,下载后解压zip包,将Cloudwise NDK中libs目录下的全部内容(CPU架构目录及对应的SO库libCloudwise.so)拷贝到应用工程子项目根目录的libs目录下即可。
如果项目中没有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”链接下载zip包。解压缩后,将其中libcurl.a文件文件拷贝至cocos工程中来替换jni目录的CPU架构目录下的libcurl.a文件。
libcurl.a目前只支持armeabi和armeabi-v7a两种CPU架构。
编译工程
安装并配置完成后,clean当前App工程并重新编译工程即可。
查看数据
至此,Smart SDK已经安装部署完成,在模拟器或真实设备中运行App。Smart SDK开始收集数据并生成分析报告,只需要稍等片刻,您就能在移动应用列表中查看数据。