鸿蒙项目实战(完结)

一、通用DB工具

完成饮食记录操作和model的开发。

在RecordModel中

//关系型数据库
import relationalStore from '@ohos.data.relationalStore'
import data from '@ohos.telephony.data'
import { ColumnInfo, ColumnType } from '../common/bean/ColumnInfo'
import RecordPO from '../common/bean/RecordPO'
import DbUtil from '../common/utils/DbUtil'
//数据库建表语句
const CREATE_TABLE_SQL: string = `
 CREATE TABLE IF NOT EXISTS record (
   id INTEGER PRIMARY KEY AUTOINCREMENT,
   type_id INTEGER NOT NULL,
   item_id INTEGER NOT NULL,
   amount DOUBLE NOT NULL,
   create_time INTEGER NOT NULL
 )
 `

const COLUMNS:ColumnInfo[]=[
 {name:'id',columnName:'id',type:ColumnType.LONG},
 {name:'typeId',columnName:'id',type:ColumnType.LONG},
 {name:'itemId',columnName:'id',type:ColumnType.LONG},
 {name:'amount',columnName:'id',type:ColumnType.DOUBLE},
 {name:'createTime',columnName:'id',type:ColumnType.LONG}
]

const TABLE_NAME = 'record'
const ID_COLUMN = 'id'
const DATE_COLUMN = 'create_time'

class RecordModel {
 getCreateTableSql():string{
  return CREATE_TABLE_SQL
 }

 insert(record:RecordPO):Promise<number>{
  return DbUtil.insert(TABLE_NAME,record,COLUMNS)
 }

 deleteById(id:number){
  //1.删除条件
  let predicates = new relationalStore.RdbPredicates(TABLE_NAME)
  predicates.equalTo('ID_COLUMN',id)
  //2.删除
  return DbUtil.delete(predicates)
 }
listByDate(date:number) :Promise<RecordPO[]>{
 //1.查询条件
 let predicates = new relationalStore.RdbPredicates(TABLE_NAME)
 predicates.equalTo('DATE_COLUMN',date)
 //2.查询
 return DbUtil.queryForList(predicates,COLUMNS)
}
}

let recordModel = new RecordModel()

export default recordMode
鸿蒙HarmonyOS是华为开发的一款分布式操作系统,旨在为各种智能设备提供统一的操作系统平台。在鸿蒙HarmonyOS上实现微信app效果,可以通过以下步骤进行: ### 1. 环境搭建 首先,需要搭建鸿蒙HarmonyOS的开发环境。可以通过华为开发者官网下载DevEco Studio,这是鸿蒙系统的集成开发环境(IDE)。 ### 2. 创建新项目 打开DevEco Studio,创建一个新的鸿蒙HarmonyOS项目。选择合适的模板,例如“Empty Ability”,然后填写项目名称和包名等信息。 ### 3. 设计界面 使用鸿蒙HarmonyOS提供的UI框架,设计微信app的界面。可以通过XML布局文件或者代码方式实现。微信的主要界面包括聊天列表、聊天窗口、联系人列表等。 ### 4. 实现功能 #### 4.1 聊天功能 实现聊天功能需要处理消息的发送和接收。可以使用鸿蒙HarmonyOS提供的WebSocket或者Socket接口进行实时通信。 ```java // 示例代码:发送消息 public void sendMessage(String message) { // 使用WebSocket发送消息 webSocket.send(message); } // 示例代码:接收消息 webSocket.onMessage((message) -> { // 处理接收到的消息 receiveMessage(message); }); ``` #### 4.2 联系人列表 实现联系人列表需要从服务器获取联系人数据,并显示在界面上。可以使用ListContainer组件来实现。 ```xml <!-- 示例代码:联系人列表布局 --> <ListContainer id="contactList" orientation="vertical"> </ListContainer> ``` ```java // 示例代码:加载联系人数据 public void loadContacts() { List<Contact> contacts = getContactsFromServer(); contactList.setItemProvider(new ContactItemProvider(contacts)); } ``` #### 4.3 聊天记录 实现聊天记录需要将消息保存到本地数据库中。可以使用鸿蒙HarmonyOS提供的数据库接口进行数据存储。 ```java // 示例代码:保存消息到数据库 public void saveMessage(String message) { // 使用数据库接口保存消息 database.insert("messages", message); } ``` ### 5. 测试与调试 在模拟器或者真机上测试app的各项功能,确保没有明显的bug和问题。 ### 6. 发布 完成开发和测试后,可以将app发布到华为的应用市场。 ### 总结 通过以上步骤,可以在鸿蒙HarmonyOS上实现一个类似微信的app效果。当然,实际开发中还需要考虑更多的细节和优化,例如性能优化、安全性、用户体验等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值