#夏日挑战赛#ArkUI开发问题汇总【系列1】 原创 精华
今天我继续对社区里遇到的一些问题做一个整理
都是我回答过的一些问题,如果能真切的帮到开发者,那么很荣幸
问题1.ETS 的应用不能在P40模拟器上运行?
回答,P40模拟器是API 6,P40 PRO 才是API 7,然后P50是API8,所以你在使用模拟器的时候看一下你的项目用的是API的那个版本,寻找适合自己的。
问题2.数据存储SharePreference如何使用?
回答:
1.导入模块:import data_storage from ‘@ohos.data.storage’;
2.获取到要操作的Storage实例,用于进行数据存储操作 括号里面为应用程序内部数据存储路径。
static store = data_storage.getStorageSync(‘/data/data/’ + “string” );
3.存放数据
store .putSync(userId, value)
store.flushSync()
问题3.ets如何加载视频资源?
这种加载方式,无法在开发板上进行视频播放.
回答,你现在用的DevEco Studio 3.0.0.900,根本就没有rawfile资源文件夹,这个版本默认不常见,所以不能用这种引入方式,而是用$r(“app.media.viedeo.mp4”)
问题4.ETS支持chart组件吗?
回答:目前还不支持哦
问题5.请问ets怎么做的Http请求
ArkUI开发框架在 @ohos.net.http
模块提供了网络请求相关 API,
- 发起 http 网络请求需要申请 ohos.permission.INTERNET 权限。
- 发起 http 网络请求限定并发个数为 100 ,超过这一限制的后续请求会失败。
- 默认支持
https
,如果要支持http
,需要在config.json
里增加network
标签,属性标识 “cleartextTraffic”: true。
@ohos.net.http
模块定义的API注释的很清晰,首先调用 createHttp()
方法获取一个 HttpRequest
实例,然后调用 HttpRequest
的 request()
方法发送网络请求。
使用 @ohos.net.http
模块发起网络请求分为以下步骤:
1.引入http模块
import http from '@ohos.net.http';
2.创建一个httpRequest
let httpRequest = http.createHttp();
3.发起http请求
httpRequest
提供了两种 request()
方法进行网络请求,分别是无 RequestOptions
参数的请求和有 RequestOptions
参数的请求。
具体使用,可以看我的这篇文章:鸿蒙藏头诗应用
##问题6. 使用蓝湖时,eTS单位的换算
eTS默认使用的单位是vp,将px转vp:
px:屏幕物理像素单位。
vp:屏幕密度相关像素,根据屏幕像素密度转换为屏幕物理像素
ppi:屏幕像素点密度(Pixels Per Inch-PPI),对角线像素点个数/屏幕尺寸。 即每英寸中有多少个像素点。
vp=(px*160)/PPI
PS:乘以160是因为在一些通用屏幕下160像素密度下刚好1vp=1px;
备注:各屏幕密度如下
320*480(120<value<160),以此类推,密度为420会归到1080x1920里面
感谢分享
口译,这类踩坑贴必须可以
感谢感谢
一起加油