all

如何从任何地方获取包名?

发布于 2022-03-22 22:38:50

我知道Context.getApplicationContext()View.getContext()的可用性,通过它们我实际上可以调用Context.getPackageName()来检索应用程序的包名称。

View如果我从可以使用 a
or对象的方法调用它们,它们会起作用Activity,但是如果我想从没有Viewor的完全独立的类中找到包名,有没有Activity办法(直接或间接)做到这一点?

关注者
0
被浏览
40
1 个回答
  • 面试哥
    面试哥 2022-03-22
    为面试而生,有面试问题,就找面试哥。

    一个想法是在您的主要活动中有一个静态变量,实例化为包名称。然后只需引用该变量。

    您必须在主要活动的onCreate()方法中对其进行初始化:

    全局类:

    public static String PACKAGE_NAME;
    

    然后..

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    
        PACKAGE_NAME = getApplicationContext().getPackageName();
    }
    

    然后,您可以通过 访问它Main.PACKAGE_NAME



推荐阅读
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看