本教程主要讲述如何利用ArkUI-X SDK完成Android AAR开发,实现基于ArkTS的声明式开发范式在android平台显示。包括:
1.跨平台Library工程开发介绍
2.AAR在Android应用工程的集成方式
使用ACE Tools和DevEco Studio集成ArkUI-X SDK进行Android AAR开发
可以通过通过ACE Tools或DevEco Studio完成
ACE Tools
1.ace create 命令创建一个跨平台的library模版工程:
ace create [project] -t library
2.执行ace build aar命令,构建Android aar包。
ace build aar
DevEco Studio
1.创建一个ArkUI-X Library工程
2.通过执行Build APP(s)选项,构建出Android aar包
在应用工程初始化ArkUI-X
通过Android studio 创建一个应用工程,将我们上述的aar包添加到工程目录下的libs目录中 Application部分
继承调用
package com.example.helloworld;import com.example.myaar.MyApplication;
public class MainApplication extends MyApplication {}
代理类调用
package com.example.helloworld;import android.app.Application;import android.content.res.Configuration;import android.util.Log;import ohos.stage.ability.adapter.StageApplicationDelegate;
public class MainApplication extends Application {private StageApplicationDelegate appDelegate = null;public void onCreate(){ super.onCreate(); this.appDelegate = new StageApplicationDelegate(); this.appDelegate.initApplication(this); }
public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if(this.appDelegate == null) { Log.e("StageApplication", "appDelegate is null"); } else { this.appDelegate.onConfigurationChanged(newConfig); } }}
打开ArkUI-X页面使用Activity加载页面
在AndroidManifest.xml中配置Activity
<application android:name="com.example.test_aar_demo.MainApplication"> <activity android:name="com.example.myaar.EntryMainAbilityActivity" android:windowSoftInputMode="adjustResize |stateHidden" android:configChanges="orientation|keyboard|layoutDirection|screenSize|uiMode|smallestScreenSize"/></application>
使用intent打开Activity页面
startActivity(newIntent(this, EntryMainAbilityActivity.class));
使用Fragment加载页面
在Activity中加载StageFragment
StageFragment stageFragment = new StageFragment();stageFragment.setInstanceName("com.example.myaar:entry:EntryMainAbilityActivity:");supportFragmentManager.beginTransaction().replace(R.id.content, it).commitNowAllowingStateLoss();
领取专属 10元无门槛券
私享最新 技术干货