通过OEM定制,客户可以在原来Smartbi Android APP基础上进行修改,修改其中的应用信息、桌面图标、启动图片、加载中的图片、主界面、登录界面等,最后打包生成一个OEM定制的Android APK文件。
在Android设备上安装该APK文件,会安装一个经过OEM定制的APP,得到在APP界面上显示客户的LOGO等显示效果。
Smartbi支持OEM定制以下内容:
1.应用信息
下表是一些OEM定制中常需修改的值。其中“名称”一列在修改应用信息时会使用到,在后文中会有说明。
名称 | 示例 | 说明 |
---|---|---|
app_name | Smartbi | 应用显示名称 |
DEFAULT_SERVER_ADDR${n} | http://demo.smartbi.com.cn/smartbi | 配置第n个服务器的地址 |
DEFAULT_USER_NAME${n} | demo | 配置第n个服务器的登录用户名 |
DEFAULT_PASSWORD${n} | demo | 配置第n个服务器的登录密码 |
2.相关图片资源
OEM定制过程中,一般需要修改以下6张图片。注意,在修改时,图片的名称和尺寸必须与下表严格一致。
下表中所说的“路径”在后面修改图片资源时会使用到,在后文中会有说明。
图片 | 尺寸 | 路径 |
---|---|---|
桌面图标 | 144×144 | Smartbi for Android Packager\smartbi\res\drawable\logo_icon.png |
加载中图片 | 1024×768 | Smartbi for Android Packager\smartbi\res\drawable\loading_pad.png |
桌面图标(高分辨率设备) | 144×144 | Smartbi for Android Packager\smartbi\res\drawable-hdpi\logo_icon.png |
注:若是希望后期oem更新后,APP自动提醒用户更新,可先查看wiki文档,移动端oem定制更新后提醒用户下载 再进行OEM定制 |
---|
为了方便客户进行OEM定制,我们提供了Smartbi for Android Packager工具,按以下步骤可以完成OEM定制:
修改Smartbi for Android Packager\decode.cmd中的Java路径,建议先设置好JAVA_HOME环境变量,然后像下图那样设置。注意,JAVA路径最好包含在双引号中,否则会在路径中包含空格时报错。
修改Smartbi for Android Packager\encode.cmd中的Java路径,然后执行encode.cmd。
执行完成后,Smartbi for Android Packager\smartbi目录下的内容将会被编译成Smartbi for Android Packager\Smartbi_new.apk文件。
注:此操作是必须进行的,若是没有进行,会导致手机无法安装生成的apk。
对APK文件进行签名的主要目的,是防止第三方通过在设备上安装包名完全一致的APP来替换掉自己的APP,而且没有签名的APK文件有可能会被某些设备认为不安全而拒绝安装。
进行APK文件签名,可以按以下步骤来完成:
移动端首页等资源的修改没有在上面的工具中提供,因为它们是服务器提供、APP加载的。
要修改移动端首页,可以下载MobilePortalChange.ext扩展包,用压缩工具打开扩展包,然后替换其中相应的图片资源。注意,替换的图片资源名称和尺寸必须与对应图片文件一致。
移动端首页对应的图片资源在这扩展包中这两个目录下: 【MobilePortalChange.ext\vision\android\login\img】,【MobilePortalChange.ext\vision\android\portraitweb\img】
下面两个对应LOGO的文件:
MobilePortal.ext\vision\android\login\img\login_logo.png (544×72)
MobilePortal.ext\vision\android\portraitweb\img\homepage_banner.png (280×58)
这一步必做的:为了防止修改的logo后出现不生效的问题,修改了MobilePortalChange.ext 中哪个目录下的图片,就需要保证这个目录下的version.txt上的时间和产品war包中mobileprotal.ext扩展包中的相同路径下的version.txt的时间不能相同。安卓版本的version.txt路径为:MobilePortalChange.ext\vision\android\login(如下图) ,将里边的时间信息重新修改下,保持和war包版本中的mobileprotal.ext扩展包(mobileprotal.ext在war包中扩展包路径为:C:\Smartbi_Insight\Tomcat\webapps\smartbi\WEB-INF\extensions)中的version时间不一样即可:
最后,将扩展包部署到服务器上,详见扩展包部署。
由于“分享到微信”功能已经绑定了Smartbi的数字签名,因此按以上步骤生成的apk将无法使用“分享到微信”的功能。如果还需要此功能,有两种方式处理: