如何解决android:name标签中的多个上下文?我正在使用齐射,杰森

时间:2016-02-10 09:11:24

标签: android json rest android-volley

关注此帖子后

getApplicationContext()' on a null object reference using volley in non-activity

这是我的舞台:

登录>(致电cliente) Cliente.class >转到“ Welcome.class

移动>(来电移动帐户) Movimientos.class >回归动作

帐户> (通话清单帐户) Cuentas.class >退货帐户

但我只能添加到AndroidManifest android:name =“restful.dao.Cliente”

<application
    android:name="restful.dao.Cliente"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">

所有这些都使用URL volley和JSON。

他们,如何为所有非活动添加属性上下文?   - Cliente.class   - Movimientos.class   - Cuentas.class

考虑到,我不能添加多个标签

  • 机器人:名称= “的 restful.dao.Cliente
  • 机器人:名称= “的 restful.dao.Movimientos
  • 机器人:名称= “的 restful.dao.Cuentas

2 个答案:

答案 0 :(得分:0)

您可以将Context作为参数传递给非活动类,并引用该参数而不是调用getApplicationContext()

public class Cliente {
    private Context mContext;

    public Cliente(Context context) {
        mContext = context;

        // Now you can reference mContext 
        // instead of calling getApplicationContext()
    }
}

现在使用Clientenew Cliente(this);实现new Cliente(getApplicationContext());课程,具体取决于代码中您Cliente课程的实例。

答案 1 :(得分:0)

您只能拥有一个扩展Application的类。使它像MyApp一样。

然后,无论您需要上下文,都可以从调用活动或MyApp实例中获取它。