信创银河麒麟高级服务器操作系统 V10 安装无头浏览器 Chromium

如果是 x86 架构,直接从 Chrome 官网下载即可。如果是 arm 架构会比较麻烦,摸索了一天整理出以下方法。

1
2
3
4
5
6
7
curl -LO https://update.cs2c.com.cn/NS/V10/V10-GFB/030/os/adv/lic/base/aarch64/packages/nss-mdns-0.14.1-3.ky10.aarch64.rpm
curl -LO https://update.cs2c.com.cn/NS/V10/V10-GFB/030/os/adv/lic/base/aarch64/packages/chromium-common-90.0.4430.212-1.p01.ky10.aarch64.rpm
curl -LO https://update.cs2c.com.cn/NS/V10/V10-GFB/030/os/adv/lic/base/aarch64/packages/chromium-90.0.4430.212-1.p01.ky10.aarch64.rpm
yum install -y libXau.aarch64
yum localinstall -y nss-mdns-0.14.1-3.ky10.aarch64.rpm
yum localinstall -y chromium-common-90.0.4430.212-1.p01.ky10.aarch64.rpm
yum localinstall -y chromium-90.0.4430.212-1.p01.ky10.aarch64.rpm

调用的话,直接 /usr/bin/chromium-browser

如果需要用无头浏览器测试中文页面,还需要安装中文字体——把字体文件复制到 /usr/share/fonts/ 目录下,然后执行 fc-cache -v 即可。

Harmony 鸿蒙应用开发之解决 Web 组件加载本地资源跨域问题

鸿蒙开发文档中有一节 加载本地页面 提到了可以通过 $rawfile 方法加载本地 HTML 网页:

Index.ets
1
Web({ src: $rawfile("local.html"), controller: this.webviewController })

但是如果在 local.html 中需要引用一些静态资源,例如图片、JS、CSS 等,静态资源放在 local.html 同级目录下,会出现跨域的错误:

Console
1
Access to ... at 'resource://...' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, arkweb, data, chrome-extension, chrome, https, chrome-untrusted.
阅读更多

Harmony 鸿蒙应用开发之展示 PDF 文件

鸿蒙应用展示 PDF 文件有三种方式

  1. 通过 ArkWeb 先加载 PDF.js,再用 PDF.js 加载 PDF 文件
  2. 通过 ArkWeb 直接加载 PDF 文件
  3. 原生加载

第一种方式比较复杂,涉及到 PDF.js 资源的加载、跨域的处理等,我就直接放代码仓库,读者可以自行研究: https://gitee.com/imaegoo/hm-pdf-viewer

更加推荐第二种方式,写法更简单

阅读更多

HarmonyOS NEXT 应用开发踩坑笔记

What’s HarmonyOS NEXT

鸿蒙系统将移除 AOSP(Android 开源项目),不再兼容 apk 格式的安卓应用的安装。

比较 Harmony 与 Android

系统HarmonyAndroid
语言ArkTSJava
IDEDevEco StudioAndroid Studio
安装包格式APPAPK

API 版本

API 9 对应兼容安卓的鸿蒙,API 10 和 API 11 对应鸿蒙 NEXT。

阅读更多