`

android由应用包名得到该应用的默认启动类

阅读更多
    /**
     * get the launcher activity class full name of an application by the package name
     * 
     * @param context
     *            the context of current application
     * @param packageName
     *            the package name of the application (it can be any application)
     * @return
     */
    public static String getLauncherActivityNameByPackageName(Context context, String packageName) {
        String className = null;
        Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);//android.intent.action.MAIN
        resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);//android.intent.category.LAUNCHER
        resolveIntent.setPackage(packageName);
        List<ResolveInfo> resolveinfoList = context.getPackageManager().queryIntentActivities(resolveIntent, 0);
        ResolveInfo resolveinfo = resolveinfoList.iterator().next();
        if (resolveinfo != null) {
            className = resolveinfo.activityInfo.name;
        }
        return className;
    }

 该方法可以通过某个应用的包名找到该应用中的默认启动类

        <activity
            android:name="com.fly.aty.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

 如上,将AndroidManifest.xml中的包名传入第二个参数则可以得到com.fly.aty.MainActivity

分享到:
评论

相关推荐

    android 通过应用包名打开应用

    本示例“android 通过应用包名打开应用”将介绍如何在Android中通过已知的应用包名启动该应用。 首先,我们需要理解Android中启动另一个应用的基本过程。这个过程通常涉及使用`Intent`对象,`Intent`是Android中...

    获取安卓手机安装应用包名,并打开对应应用

    一旦获取到目标应用的包名,就可以启动该应用。这需要用到`Intent`来指定我们要启动的操作。例如,如果想要启动一个应用,可以创建一个`Intent`,并设置其动作为`ACTION_MAIN`,类别为`CATEGORY_LAUNCHER`,这些是...

    着看所有apk的包名和类名,用于启动或关闭某个app

    在Android系统中,每个应用程序都有一个独一无二的标识,即包名(Package Name),它是由开发者在创建应用时自定义的,通常遵循域名反写规则,例如com.example.myapp。包名在Android系统中起到类似互联网上的URL作用...

    Android应用开机自启动

    下面将详细介绍如何在Android应用中实现开机自启动以及可能遇到的问题。 1. **广播接收器(BroadcastReceiver)** 开机自启动的关键在于创建一个`BroadcastReceiver`,它会监听到系统的`ACTION_BOOT_COMPLETED`...

    浅谈android性能优化之启动过程(冷启动和热启动)

    Android 应用程序启动优化之冷启动和热启动详解 一、应用程序启动方式 Android 应用程序的启动方式可以分为两种:冷启动和热启动。 1. 冷启动:当启动应用程序时,后台没有该应用程序的进程,这时系统会重新创建...

    android修改默认google拼音输入法及预置apk

    这通常涉及到修改XML配置文件或者在代码中硬编码默认输入法的包名。 3. **预置apk到系统**: 预置apk意味着将应用集成到系统镜像中,使得该应用在设备启动时就已经存在。首先,你需要将Google拼音输入法的apk文件...

    Android应用源码之隐藏安装包图标使用其他应用启动本应用.zip

    在Android应用开发中,有时出于特定需求,开发者可能希望创建一个没有桌面图标的App,即隐藏安装包图标,然后通过其他应用或者特定的触发方式来启动这个应用。这个主题涉及的知识点主要包括Android应用的基本结构、...

    Android移动应用开发实验指导书

    该章节重点介绍了如何使用Eclipse创建并运行一个简单的Android应用程序,以及Android虚拟设备(AVD)的创建和使用。 **详细知识点:** - **创建Android工程:** - 使用Eclipse的New Project向导来创建新的Android...

    Android中获取所有应用程序信息

    现在我们有了`resolveInfos`列表,可以通过遍历这个列表来获取每个应用的详细信息,如应用名称、图标、包名等。以下是如何获取这些信息的示例: ```java for (ResolveInfo info : resolveInfos) { String package...

    android得到最近使用过的应用

    获取到应用包名后,你可以进一步获取应用的其他信息,如应用名称、图标等。这通常通过`PackageManager`类实现,例如: ```java PackageManager packageManager = getPackageManager(); ApplicationInfo appInfo = ...

    Android高级应用源码-调用系统默认播放器,RTSP流媒体。.zip

    在Android平台上,开发...通过"VideoDemo"这个示例,开发者可以学习如何在Android应用中集成RTSP流媒体播放功能,同时理解`MediaPlayer`类的工作原理和生命周期管理。这将有助于开发更加健壮和功能丰富的多媒体应用。

    ANDROID应用开发试题.pdf

    11. 下面说法错误的是() BCA.Android 采用单线程模型B.Android 会默认会为线程创建一个关联的消息队列C.Handler 会与多个线程以及该线程的消息队列对应D.程序组件首先通过Handler 把消息传送给 Looper,Looper...

    Android 应用加密锁屏

    在Android平台上,开发一款加密锁屏应用是一种常见的实践,它能为用户提供额外的安全保障,防止他人未经许可访问用户的设备。本项目"Android 应用加密锁屏"是针对这一需求而设计的,其代码简洁易懂,对于Android编程...

    Android高级应用源码-语音识别,根据语音,执行对应操作.zip

    这个“Android高级应用源码-语音识别,根据语音,执行对应操作.zip”压缩包中,很可能包含了一个完整的示例项目,用于演示如何在Android应用中集成并实现基于语音的交互功能。以下将详细介绍这一技术的知识点: 1. ...

    全面解析Android应用开发中Activity类的用法

    在Android应用开发中,Activity是核心组件之一,它充当了用户界面与应用程序逻辑之间的桥梁。Activity类位于`android.app`包中,从`java.lang.Object`派生,并依次继承了`android.content.Context`、`android.app....

    安卓Android源码——监听自身应用卸载.zip

    Android应用程序由一系列的Activity、Service、BroadcastReceiver等组件构成,它们各自有不同的生命周期。在应用卸载过程中,我们不能直接监听到卸载事件,因为一旦应用被卸载,所有的组件都将不再运行。因此,我们...

    Android应用开发中使用第三方字体

    在Android应用开发中,为了实现更具个性化或者符合品牌特色的用户界面,我们经常需要引入第三方字体。这个Demo就是针对这一需求,展示了如何在Android项目中集成和使用非系统默认的字体。接下来,我们将深入探讨...

    Android退出整个应用的方法

    一个Android应用是由一系列的Activity组成的,这些Activity在栈中按启动顺序组织,形成了所谓的任务(task)。默认情况下,当用户按下后退键时,系统会按照栈的逆序依次销毁Activity,直至退出应用。因此,一种简单的...

    Hbuilder项目Android Studio本地打包详细步骤

    - 特别需要注意的是`&lt;application&gt;`标签内的配置以及`&lt;activity&gt;`标签内的配置,确保`android:name`属性正确指向了DCloud提供的入口类。 6. **复制HTML5资源文件**: - 在Android项目的`assets`文件夹下创建`apps`...

Global site tag (gtag.js) - Google Analytics