HarmonyOS鸿蒙Next中跳转到应用管理

HarmonyOS鸿蒙Next中跳转到应用管理 本节演示,如何通过设置Intent,来从当前应用跳转到应用管理——管理已安装应用程序的设置。

创建应用

创建名为IntentOperationWithActionManageApplicationsSettings的应用。

修改MainAbilitySlice

修改MainAbilitySlice代码如下:

package com.waylau.hmos.intentoperationwithactionmanageapplicationssettings.slice;

import com.waylau.hmos.intentoperationwithactionmanageapplicationssettings.ResourceTable;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.aafwk.content.Operation;
import ohos.agp.components.Text;
import ohos.hiviewdfx.HiLog;
import ohos.hiviewdfx.HiLogLabel;
import ohos.utils.IntentConstants;

public class MainAbilitySlice extends AbilitySlice {
    private static final String TAG = MainAbilitySlice.class.getSimpleName();
    private static final HiLogLabel LABEL_LOG =
        new HiLogLabel(HiLog.LOG_APP, 0x00001, TAG);

    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        super.setUIContent(ResourceTable.Layout_ability_main);

        // 添加点击事件来触发请求
        Text text = (Text) findComponentById(ResourceTable.Id_text_helloworld);
        text.setClickedListener(listener -> this.goToSetting());
    }

    private void goToSetting() {
        HiLog.info(LABEL_LOG, "before goToSetting");
        Intent intent = new Intent();
        Operation operation = new Intent.OperationBuilder()
            .withAction(IntentConstants.ACTION_MANAGE_APPLICATIONS_SETTINGS) // 应用管理
            .build();
        intent.setOperation(operation);

        // 启动Ability
        startAbility(intent);
        HiLog.info(LABEL_LOG, "after goToSetting");
    }

    @Override
    public void onActive() {
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}

上述代码

  • 对默认生成的Id_text_helloworld文本设置点击事件,点击则会执行goToSetting方法。
  • goToSetting构建了Intent,该对象指明了withAction为应用管理。应用管理的Action常量值定义在IntentConstants.ACTION_MANAGE_APPLICATIONS_SETTINGS中。
  • 使用startAbility方法来启动Ability。

运行

运行应用,界面显示如下。

点击“Hello World”本文,触发点击事件。

此时,界面切换到了系统应用拨号盘,如下。


更多关于HarmonyOS鸿蒙Next中跳转到应用管理的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

每次都是干货满满,不错不错

更多关于HarmonyOS鸿蒙Next中跳转到应用管理的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


多谢支持,还望继续关注后续更新!

好文啊,楼主写的真不错,点赞支持

多谢支持,还望继续关注后续更新!

在HarmonyOS鸿蒙Next中,可以通过IntentBundle来实现跳转到应用管理界面。首先,创建一个Intent对象,设置其actionSettings.ACTION_APPLICATION_DETAILS_SETTINGS,并传入目标应用的包名。然后,调用startActivity方法启动该Intent。具体代码如下:

Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", "com.example.app", null);
intent.setData(uri);
startActivity(intent);

这段代码将打开系统设置中的应用管理页面,并定位到指定应用的详细信息界面。

回到顶部