如何在Android中获取默认应用程序图标的可绘制ID

渔民

在我的情况下,我知道以下一些方法

getApplicationContext().getResources().getIdentifier("nameOfDrawable", "drawable", packageName);
getApplicationContext().getPackageManager().getApplicationIcon(packageName);

我想获取应用程序图标的可绘制ID,但是我不知道应用程序图标的“ nameOfDrawable”。我说我不知道​​,因为默认应用程序图标的名称可以是“ ic_launcher.png”,也可以更改为“ icon.png”之类的名称。我发现上面的第二种方法可以获取应用程序图标的drawable,但是然后我不知道该怎么办。有谁知道如何获取应用程序图标的可绘制ID?请帮忙,谢谢!

实际上,我想显示一个通知,但是它需要使用图标的可绘制ID。我发现上面的第一种方法可以获取应用程序图标的drawable ID,但是它需要应用程序图标文件的名称,该名称在不同应用程序中可以不同。我正在做的是使一个小图书馆做某事,所以无法确认某事。

渔民

最后,我找到了解决问题的方法。代码如下。

String packageName = context.getApplicationContext().getPackageName();
        Intent launchIntent = context.getApplicationContext().getPackageManager().getLaunchIntentForPackage(packageName);
        String className = launchIntent.getComponent().getClassName();

Class<?> c = null;
        if(className != null) {
            try {
                c = Class.forName(className);
            } catch (ClassNotFoundException e) {
                Log.i(TAG, "Throw exception when try to get the main class.");
                e.printStackTrace();
            }
        }

ApplicationInfo info = null;
        try {
            info = context.getApplicationContext().getPackageManager().getApplicationInfo(packageName, 0);
        } catch (NameNotFoundException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        int icon = info.icon;

long when = System.currentTimeMillis();
        Notification notification = new Notification(icon, null, when);
        notification.flags = Notification.FLAG_AUTO_CANCEL;
        notification.defaults = notification.DEFAULT_SOUND|notification.DEFAULT_VIBRATE;
        Intent openintent= new Intent(context, c);
        PendingIntent contentIntent = PendingIntent.getActivity(context.getApplicationContext(), 0, openintent, 0);
        notification.setLatestEventInfo(context.getApplicationContext(), "Notification", message, contentIntent);

        NotificationManager mNotificationManager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
        mNotificationManager.notify(NOTIFICATION_COUNT, notification);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Android Studio中更改默认的应用程序图标形状

来自分类Dev

如何获取正在运行的图标的应用程序并保存在Array_list中?

来自分类Dev

如何获取正在运行的图标的应用程序并保存在Array_list中?

来自分类Dev

如何在带有图标的应用程序中显示电池状态?

来自分类Dev

如何在带有图标的应用程序中显示电池状态?

来自分类Dev

如何在Ubuntu 18.04上的应用程序概述中调整应用程序图标的大小?

来自分类Dev

如何在UNIX中获取应用程序的默认版本

来自分类Dev

Ubuntu应用程序图标的默认大小是多少?

来自分类Dev

如何在LIBGDX Android应用程序中获取getContext()

来自分类Dev

在Android应用程序中更改可绘制(PNG)

来自分类Dev

如何使用android imageview应用程序在可绘制文件夹中打开图像?

来自分类Dev

如何在Blazor应用中更改默认图标提供程序?

来自分类Dev

如何在应用程序栏右侧添加图标的间距

来自分类Dev

Oracle Apex 19.2如何在登录页面上更改应用程序图标的颜色

来自分类Dev

我们如何在Android中动态更改Android应用程序图标

来自分类Dev

如何在Android Studio中更改新的Android应用程序的图标?

来自分类Dev

我们如何在Android中动态更改android应用程序图标

来自分类Dev

自适应应用程序搜索中图标的来源?

来自分类Dev

如何在android studio中的android应用程序中更改默认字体

来自分类Dev

如何在面板中布置应用程序图标?

来自分类Dev

如何在D应用程序中添加图标?

来自分类Dev

如何在golang中设置应用程序图标?

来自分类Dev

如何在应用程序中删除Silverlight图标?

来自分类Dev

如何在面板中布置应用程序图标?

来自分类Dev

如何在Tkinter应用程序中替换图标

来自分类Dev

如何在Windows中获取默认的扩展应用程序[Java]

来自分类Dev

如何在Android中以编程方式根据开关值更改应用程序图标

来自分类Dev

如何在Android电话簿中显示应用程序图标(如Whats App Skype)

来自分类Dev

如何在Android Studio中的应用程序栏上切换菜单图标

Related 相关文章

  1. 1

    如何在Android Studio中更改默认的应用程序图标形状

  2. 2

    如何获取正在运行的图标的应用程序并保存在Array_list中?

  3. 3

    如何获取正在运行的图标的应用程序并保存在Array_list中?

  4. 4

    如何在带有图标的应用程序中显示电池状态?

  5. 5

    如何在带有图标的应用程序中显示电池状态?

  6. 6

    如何在Ubuntu 18.04上的应用程序概述中调整应用程序图标的大小?

  7. 7

    如何在UNIX中获取应用程序的默认版本

  8. 8

    Ubuntu应用程序图标的默认大小是多少?

  9. 9

    如何在LIBGDX Android应用程序中获取getContext()

  10. 10

    在Android应用程序中更改可绘制(PNG)

  11. 11

    如何使用android imageview应用程序在可绘制文件夹中打开图像?

  12. 12

    如何在Blazor应用中更改默认图标提供程序?

  13. 13

    如何在应用程序栏右侧添加图标的间距

  14. 14

    Oracle Apex 19.2如何在登录页面上更改应用程序图标的颜色

  15. 15

    我们如何在Android中动态更改Android应用程序图标

  16. 16

    如何在Android Studio中更改新的Android应用程序的图标?

  17. 17

    我们如何在Android中动态更改android应用程序图标

  18. 18

    自适应应用程序搜索中图标的来源?

  19. 19

    如何在android studio中的android应用程序中更改默认字体

  20. 20

    如何在面板中布置应用程序图标?

  21. 21

    如何在D应用程序中添加图标?

  22. 22

    如何在golang中设置应用程序图标?

  23. 23

    如何在应用程序中删除Silverlight图标?

  24. 24

    如何在面板中布置应用程序图标?

  25. 25

    如何在Tkinter应用程序中替换图标

  26. 26

    如何在Windows中获取默认的扩展应用程序[Java]

  27. 27

    如何在Android中以编程方式根据开关值更改应用程序图标

  28. 28

    如何在Android电话簿中显示应用程序图标(如Whats App Skype)

  29. 29

    如何在Android Studio中的应用程序栏上切换菜单图标

热门标签

归档