应用初始化

时间:2012-06-18 12:56:10

标签: android bluetooth classcastexception

我目前正在制作一个只有三个班级的应用程序。两个活动和一个Application类。从我到目前为止学到的应用程序,该类在程序开始时初始化,这是否意味着我不需要在每个Activity中初始化类的Object?

我的程序每次都在开始时崩溃并且返回一个ClassCastException,我假设它与我的Application类有关,因为它是我在所有代码中进行的唯一类转换。作为一个局部变量,我有

protected BluetoothApplication myBt;

并在我的onCreate()方法中调用

myBt = (BluetoothApplication)getApplication();

2 个答案:

答案 0 :(得分:2)

不,您不需要手动初始化它,但您可以使用getApplicationContext()获取应用程序类的实例,例如: -

MyApplication application = ((MyApplication)getApplicationContext());

您还可以通过将Context传递给该类,然后使用该上下文获取Application类的实例,从非活动类访问Application类,

MyApplication application = ((MyApplication)context.getApplicationContext());

答案 1 :(得分:1)

BluetoothApplication是Android默认应用程序类的自定义子类吗?如果是这样,那么您是否告诉AndroidManifest.xml中的Android使用该类而不是默认的Application类?

有关详细信息,请参阅Android Application API