1、问题1:error: failed to start ability.

               error: ability visible false deny request.

     解决办法:在module.json5里面把export:false改成true

 初学OpenHarmony遇到的问题(1)_json

2、问题2:怎么调用系统接口(我们这里以调用系统重启接口 power.reboot('reboot_test'); 为例子)

第一步:先下载full-sdk替换D:\SDK\10(或者9下载对应版本即可)里面的SDK(因为full-sdk里面才有包含系统接口的API)下载地址:http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist初学OpenHarmony遇到的问题(1)_json_02

第二步:在module.json中添加对应权限(我这里加入的是import power from '@ohos.power';):

"requestPermissions": [
      {
        "name": "ohos.permission.REBOOT",
        "usedScene": {
          "abilities": [
            "EntryAbility"
          ],
          "when": "always"
        }
      },
      ]

第三步:修改D:\SDK\10\toolchains\lib里面UnsgnedDebugProfileTemplate.json和UnsgnedReleasedProfileTemplate.json文件的配置(网上其他人说是在ReleasedProfile里面改,但是我这样改会报错,后来我就在两个文件里面都改了,有大佬知道具体怎么改的可以在评论区里面指点一下):

      把"apl": 里面的"normal"改为"system_basic"

      "app-feature":里面的"hos_normal_app"改为"hos_system_app"

      并且在"allowed-acls":里面添加"ohos.permission.REBOOT"权限

初学OpenHarmony遇到的问题(1)_sed_03

第四步:重新自动签名

初学OpenHarmony遇到的问题(1)_bundle_04


3、问题3:因为系统默认的bundlename是com.example.myapplication

"bundleName": "com.example.myapplication",

然后就会发现两个应用的bundlename如果一样的话,开发板上就只能同时运行一个应用,这个时候要在开发板上同时运行两个应用的话就改掉其中一个应用的bundlename。具体就是在FileManager/AppScope/app.json5里面改就行了,改完记得重新签名哦。

初学OpenHarmony遇到的问题(1)_sed_05



这些问题是我初学openharmony应用开发时遇到的一些问题,可能有些地方没讲好或者讲错了,欢迎大家帮忙纠正