我知道 Context.getApplicationContext() 和 View.getContext(),我可以通过它实际调用Context.getPackageName() 检索应用程序的包名.
I am aware of the availability of Context.getApplicationContext() and View.getContext(), through which I can actually call Context.getPackageName() to retrieve the package name of an application.
如果我从 View 或 Activity 对象可用的方法调用它们,但如果我想从完全独立的类中找到包名称,它们会起作用如果没有 View 或 Activity,有没有办法(直接或间接)做到这一点?
They work if I call from a method to which a View or an Activity object is available, but if I want to find the package name from a totally independent class with no View or Activity, is there a way to do that (directly or indirectly)?
一个想法是在你的主要活动中拥有一个静态变量,实例化为包名.然后只需引用该变量.
An idea is to have a static variable in your main activity, instantiated to be the package name. Then just reference that variable.
您必须在主活动的 onCreate() 方法中对其进行初始化:
You will have to initialize it in the main activity's onCreate() method:
类全局:
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 访问它.
You can then access it via Main.PACKAGE_NAME.
这篇关于如何从任何地方获取包名?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
Android 上的数字软键盘Numeric Soft Keyboard on Android(Android 上的数字软键盘)
带有软键盘和“返回"的 EditText按钮EditText with soft keyboard and quot;Backquot; button(带有软键盘和“返回的 EditText按钮)
在 Android 上的应用程序中内置自定义“键盘&quoCustom #39;Keyboard#39; built in an application on Android(在 Android 上的应用程序中内置自定义“键盘)
如何在 Android 的移动网站中强制使用带有数字的How to force keyboard with numbers in mobile website in Android(如何在 Android 的移动网站中强制使用带有数字的键盘)
启动 Activity 时自动弹出键盘Automatic popping up keyboard on start Activity(启动 Activity 时自动弹出键盘)
如何制作 Android EditView“完成"按钮并在单击时How do I make an Android EditView #39;Done#39; button and hide the keyboard when clicked?(如何制作 Android EditView“完成按钮并在单击时隐藏