我继承了一个从Android.Manifest文件调用活动的Android应用
background-image: src(imagePath)
我已经查看该对象是否已经实例化并且无法找到它。所以我想知道这个调用是否强制对象的实例化。请注意,下一个电话是对某个应用方法的调用。
答案 0 :(得分:0)
实例化对象正在创建一个对象实例,您使用new
做什么。
这是一个不属于Android和java的OOP概念。
另一方面,getApplicationContext()
是特定于Android的,在Activity
中调用将返回已设置为Application实例的单例。应用程序只运行一个应用程序实例,它在应用程序的不同活动之间很常见,因此将一些需要从不同活动中访问的属性放在一个常见的位置,尽管它有一个警告作为应用程序可以在没有事先通知的情况下销毁。
如果使用自定义Application对象,则必须在Manifest中的application
标记中声明
答案 1 :(得分:0)
所以我想知道这个调用是否强制对象的实例化
没有。在AndroidManifest.xml
文件中,您会找到一个<application>
元素,其中android:name
属性指向此STXmaAplication
类。这导致在您的进程启动时实例化对象而不是android.app.Application
。当您拨打电话时,该对象已存在。
答案 2 :(得分:-1)
两者都返回相同的ApplicationContext。所以没有区别。
最佳做法是使用单例方法在项目中的任何位置获取out = ... + out
。
在ApplicationContext
或任何地方拨打ApplicationContext.getInstance()
。
您的应用上下文类看起来像。
Activity, Fragment, Dialog, BroadcastReceiver,