在使用HBuilder X开发完跨平台应用后,不少场景需要把本地打包的资源放到Android Studio中进行原生打包,比如需要集成原生SDK或者调整Android层面的配置。下面我们就一步步梳理完整的操作流程。

第一步:从HBuilder X导出本地打包资源
首先打开HBuilder X,选中需要打包的项目,点击顶部菜单栏的发行选项,选择原生App-本地打包,再点击生成本地打包App资源。
等待打包完成后,会在项目的unpackage/resources目录下生成对应的资源文件夹,文件夹名称一般是应用的AppID,我们需要将这个文件夹整体复制出来备用。
第二步:准备Android Studio项目
如果你已经有现成的Android Studio项目,可以直接使用;如果没有,需要先创建一个空的Android项目,注意项目的包名要和HBuilder X中配置的包名保持一致,避免后续出现签名或者权限相关的问题。
如果是使用DCloud官方提供的Android离线打包SDK项目,可以直接下载对应的基础项目,里面已经配置好了必要的基座依赖,能减少很多配置工作。
第三步:迁移资源到Android Studio项目
将之前从HBuilder X复制出来的资源文件夹,粘贴到Android Studio项目的app/src/main/assets目录下。如果assets目录不存在,可以手动在main目录下创建。
粘贴完成后,需要检查资源文件夹的层级是否正确,确保资源文件夹下的www目录等核心文件都在正确的位置,避免后续加载页面时出现路径错误。
第四步:同步配置文件
打开HBuilder X项目的manifest.json文件,记录下里面的应用名称、版本号、图标配置、权限配置等信息,然后同步到Android Studio项目的对应配置文件中。
Android Studio的app/src/main/AndroidManifest.xml需要配置应用的基础信息,比如应用名称、图标、启动页等,部分权限也需要在这里或者app/build.gradle中声明,确保和HBuilder X中的配置一致。
如果是使用离线SDK项目,还需要检查assets/data/dcloud_control.xml文件,确保里面的appid属性和HBuilder X的AppID一致,否则会出现应用启动后白屏的问题。
第五步:执行打包操作
配置完成后,点击Android Studio顶部菜单栏的Build选项,选择Generate Signed Bundle / APK,按照提示选择APK或者AAB格式,配置签名信息后就可以开始打包。
如果是第一次打包,需要先创建签名文件,记住签名文件的存储路径和密码,后续更新应用都需要使用同一个签名,否则无法覆盖安装。
常见问题解决
- 启动后白屏:一般是
dcloud_control.xml中的appid不匹配,或者assets目录下的资源路径放错,检查对应配置即可。 - 资源加载失败:检查assets目录下的资源文件夹是否放在正确的层级,不要多嵌套或者少放目录。
- 权限不足:对比HBuilder X的manifest.json中的权限配置,在AndroidManifest.xml中补充缺少的权限声明。
代码示例:检查dcloud_control.xml配置
下面是离线SDK中dcloud_control.xml的基础配置示例,需要确保appid和HBuilder X的AppID一致:
<?xml version="1.0" encoding="utf-8"?>
<root>
<!-- 这里的appid需要和HBuilder X项目的AppID完全一致 -->
<appid>com.example.testapp</appid>
<!-- 资源路径,默认指向assets下的对应资源文件夹 -->
<resources path="file:///android_asset/__UNI__123456/www" />
</root>代码示例:AndroidManifest.xml基础配置
下面是AndroidManifest.xml中需要配置的应用基础信息示例:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.testapp">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name="io.dcloud.PandoraEntry">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
HBuilder_XAndroid_Studio本地打包资源迁移Android应用打包修改时间:2026-05-31 05:52:32