收藏官网首页
查看: 16631|回复: 7

【官方】Android端APP应用开发

140

主题

418

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12643
跳转到指定楼层
楼主
发表于 2020-2-7 13:09:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
注册成为机智云开发者,手机加虚拟设备快速开发
一、效果截图
二、准备工作
  • 请自备Android开发基础,自带AndroidStudio开发环境;
  • 小编使用的是 AndroidStudio3.2 、gradle-3.3-all.zip 环境;


首先在机智云自助开发平台(dev.gizwits.com)创建产品并定义数据点。




创建应用





下载应用代码




导入成功之后,是没有红点任何错误提示的,目录结构说明





文件结构说明:


  • A. Libs: 包括 GizWifiSDK 在内的的第三方库目录**
  • assets: 包含 UIConfig.json 配置文件
  • B. GizOpenSource: 组成模块


    • GizOpenSourceModules:组成模块
    • GosApplication.java // SDK 在此启动
    • CommonModule // 公共方法类、资源文件读取类
    • ConfigModule // 设备配置模块,包含 AirLink 及 SoftAP
    • UserModule // 用户模块,包含 用户登录、用户注册、找回密码
    • DeviceModule // 设备模块,包含 设备列表
    • ControlModule // 控制模块,包含 控制示例
    • SettingsModule // 设置模块,包含 设置菜单 及其 包含的子菜单项(关于等)
    • PushModule // 推送模块,包含 百度和极光的推送SDK 集成封装
    • ThirdAccountModule // 第三方登录模块, 包含 第三方登录(QQ、微信等)
    • view // 自定义控件
    • utils // 工具类
    • wxapi // 微信集成包
    • zxing // 扫描二维码




三、导入第三方库

在工程 app 目录下的 build.gradle 下加入


compile 'com.github.PhilJay:MPAndroidChart:v3.0.1'


同时根目录下的 build.gradle 下加入一下,否则拉取不成功;

  1. allprojects {  
  2.         repositories {      
  3.                jcenter()   
  4.                maven { url 'https://jitpack.io' }      
  5.                maven {  
  6.                        url 'https://maven.google.com/'   
  7.                         name 'Google'      
  8.                 }  
  9.           }
  10. }
复制代码

在  app --- src --- main --- res ---layout 的 activity_gos_devices_control.xml布局文件修改如下:



预览的效果:




四、修改逻辑代码

温度计、统计折线表初始化在下面2个方法里面,涉及的代码太多了,我就不贴全部代码了!


setChartTemp();

setChartHum();


每当采集数据要更新ui:


  1. /**
  2.      * Description:根据保存的的数据点的值来更新UI
  3.      */
  4.     protected void updateUI() {

  5.         sw_bool_led_onoff.setChecked(data_led_onoff);
  6.         tv_data_temp.setText("当前温度" + data_temp + "℃");
  7.         tv_data_humi.setText("当前湿度" + data_humi + "%");
  8.         //取2位小数
  9.         float data_temp_show = saveOneBitTwoRound(data_temp);
  10.         //根据ui,温度进度条要加40显示
  11.         mTemperatureView.setProgress(data_temp_show + 40);
  12.         //湿度的中间文字显示
  13.         if (data_humi < 30) {
  14.             mWaveLoadingView.setCurrent((int) data_humi, "干燥");
  15.             mWaveLoadingView.setMaxProgress(100);
  16.             mWaveLoadingView.setWaveColor("#F08B88");
  17.         } else if (data_humi > 30 && data_humi < 60) {
  18.             mWaveLoadingView.setCurrent((int) data_humi, "舒适");
  19.             mWaveLoadingView.setWaveColor("#45C01A");
  20.         } else {
  21.             mWaveLoadingView.setCurrent((int) data_humi, "潮湿");
  22.             mWaveLoadingView.setWaveColor("#5be4ef");
  23.         }
  24.         Calendar c = Calendar.getInstance();// 可以对每个时间域单独修改
  25.         int hour = c.get(Calendar.HOUR_OF_DAY);
  26.         int minute = c.get(Calendar.MINUTE);
  27.         int second = c.get(Calendar.SECOND);
  28.         String timeStr = hour + ":" + minute + ":" + second;
  29.         temperIndex++;
  30.         //每次采集温度加入集合温度数据集合
  31.         dataList.add(new Entry(temperIndex, (float) data_temp, timeStr));
  32.         setTemperData(chart, dataList);
  33.         //每次采集湿度加入集合湿度数据集合
  34.         dataHumList.add(new Entry(temperIndex, (float) data_humi, timeStr));
  35.         setTemperData(chartHum, dataHumList);

  36.     }
复制代码

如何修改包名?

     在工程 app 目录下的 build.gradle 下修改 applicationId 即可:


如何自定义apk名字输出:

在工程 app 目录下的 build.gradle 下加入:

  1. android.applicationVariants.all { variant ->
  2.     variant.outputs.each { output ->
  3.         output.outputFile = new File(output.outputFile.parent, "DIY数字仪表-" + buildType.name + "-v" +                defaultConfig.versionName + "-" + defaultConfig.versionCode + ".apk" );
  4.     }}
复制代码


1

主题

4

帖子

161

积分

注册会员

Rank: 2

积分
161
沙发
发表于 2020-3-25 16:55:46 | 只看该作者
能分享一下源码吗

0

主题

1

帖子

26

积分

新手上路

Rank: 1

积分
26
板凳
发表于 2020-4-16 23:25:57 | 只看该作者
你好,能分享一下APP的开源代码吗

点评

APP源码下载地址https://github.com/xuhongv/AndroidGizWitsSTDiyMeter  详情 回复 发表于 2020-11-12 19:00

679

主题

736

帖子

3万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
36470
5#
发表于 2020-11-12 19:00:34 | 只看该作者
汉枫LPB120模块
Melody丶 发表于 2020-4-16 23:25
你好,能分享一下APP的开源代码吗

APP源码下载地址https://github.com/xuhongv/AndroidGizWitsSTDiyMeter

679

主题

736

帖子

3万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
36470
6#
发表于 2020-11-12 19:01:34 | 只看该作者

17

主题

100

帖子

1381

积分

金牌会员

Rank: 6Rank: 6

积分
1381
7#
发表于 2020-12-22 17:35:25 | 只看该作者
你好,这个折线图能放到另一个页面吗?

点评

可以  详情 回复 发表于 2020-12-24 10:26

140

主题

418

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12643
8#
 楼主| 发表于 2020-12-24 10:26:31 | 只看该作者
AIcainiao 发表于 2020-12-22 17:35
你好,这个折线图能放到另一个页面吗?

可以  
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表