清泛IT社区

标题: 鸿蒙的证书适用范围 [打印本页]

作者: App Inventor 2     时间: 昨天 19:02
标题: 鸿蒙的证书适用范围
这是鸿蒙生态的安全设计,确实比安卓复杂不少。简单说:            

  三种 HAP 的区别                                                

  ┌────────────┬───────┬──────────────────┬──────────────────┐   
  │            │ 未签  │    Debug签名     │   Release签名    │  
  │            │  名   │                  │                  │   
  ├────────────┼───────┼──────────────────┼──────────────────┤  
  │ 能安装吗   │ 不能  │ 只能装到注册的设 │ 任意设备         │   
  │            │       │ 备               │                  │   
  ├────────────┼───────┼──────────────────┼──────────────────┤   
  │ 上架应用市 │ 不行  │ 不行             │ 可以             │   
  │ 场         │       │                  │                  │   
  ├────────────┼───────┼──────────────────┼──────────────────┤  
  │ 设备限制   │ -     │ 需要提前注册UDID │ 无               │   
  ├────────────┼───────┼──────────────────┼──────────────────┤  
  │ 证书来源   │ 无    │ SDK自带调试证书  │ 华为开发者后台申 │   
  │            │       │                  │ 请               │  
  └────────────┴───────┴──────────────────┴──────────────────┘  

  为什么这么设计                                                  

  未签名 HAP = 完全不能用。鸿蒙系统拒绝安装未签名的应用,连测试都
  不行。不像安卓可以勾选"未知来源"直接装。                     

  Debug签名 = 限制在开发者自己的设备上。华为要求注册设备UDID是为了
  防止调试证书被滥用分发。本质上就是告诉你:"这是你的开发证书,别
  拿来当发布用"。                                                

  Release签名 = 正式发布。证书从华为开发者后台申请,代表你的开发者
  身份,可以被应用市场验证。

  对我们的影响                                                   

  对于 App Inventor 用户来说,最实用的方案是:                    

  1. 开发测试阶段 → 用 debug 签名就够了(SDK自带,无需用户操作)  
  2. 要上架/分发给他人 → 需要 release 签名(用户上传 .cer + .p7b)

  debug 签名那 4 步流程确实繁琐,但好消息是 SDK                  
  自带所有材料(OpenHarmony.p12),只要 BuildServer 找到         
  hap-sign-tool.jar 就能自动完成,用户无感。                     

  目前的问题是签名工具路径没传给 BuildServer,刚才已经修复了。重启
   BuildServer 后 debug 签名应该能自动生效。

❯ 我现在就是无签名hap, hdc install 到模拟器好的很                 

● 确实,模拟器不校验签名,hdc install 直接装。真机才强制要求签名。

  所以对你现在的开发测试来说,无签名 HAP                          
  完全没问题。签名流程只有用户要装到真机或上架时才需要。



作者: App Inventor 2     时间: 昨天 20:28
SDK 自带的自动签名是为了方便开发调试,而手动申请证书则是为了进行更精细的控制或为应用发布做准备。
⚙️ 自动签名:为快速开发而生
这是 DevEco Studio 提供的一项便捷功能,主要服务于开发调试阶段。
●     工作原理:当您在 DevEco Studio 中勾选“自动生成签名”并连接设备时,IDE 会自动帮您完成一系列操作:
1. 自动获取您连接设备的 UDID。
2. 使用您的华为开发者账号,在后台自动申请调试证书。
3. 生成密钥库文件(.p12)和包含该设备 UDID 的调试 Profile 文件(.p7b)。
4. 自动将这些配置应用到您的项目中。
●     核心优势:整个过程对开发者完全透明,无需手动获取 UDID、申请证书或配置任何文件,让您能最快速度在真机上运行和调试应用。




欢迎光临 清泛IT社区 (https://bbs.tsingfun.com/) Powered by Discuz! X3.3