在我的应用程序中,我需要将位置存储到firebase,因此我使用两个位置类作为应用程序,因为我需要存储两个不同实体的位置
第一个应用类
public class FirstApplicationClass extends MultiDexApplication implements GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener,
LocationListener{
}
第二个应用程序类
public class SecondApplicationClass extends FirstApplicationClass implements GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener,
LocationListener {
}
下面是manifest.xml代码
<application
android:name=".location.SecondApplicationClass"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
我需要使用this.getApplicationContext();在这两种情况下,在我使用第二个应用程序类的第二种情况下,我能够使用this.getApplicationContext();来自具体活动,即
mSecondApplicationClass = (SecondApplicationClass) this.getApplicationContext();
并能够存储位置。 我不知道如何使用this.getApplicationContext();第一个申请类,即
mFirstApplicationClass = (FirstApplicationClass) this.getApplicationContext();
我无法实现这个
答案 0 :(得分:0)
在Android应用中,ApplicationContext
唯一
ApplicationContext
或FirstApplicationClass
中SecontApplicationClass
之间没有区别。
在AndroidManifest.xml
文件中,您在此行中引入了SecondApplicatoinClass
作为应用的应用类:
机器人:名称=&#34; .location.SecondApplicationClass&#34;
因此,您的FirstApplicationClass
未作为应用的应用类引入,而您无法获得ApplicationContext
。
将您的AndroidManifest.xml
代码更改为此代码,您就可以在ApplicationContext
中获得FirstApplicationClass
:
<application
android:name=".location.FirstApplicationClass "
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
然后你可以在这两种情况下使用ApplicationContext
。