我正在尝试使用全局变量。我接下来做了这个:
1 /首先我创建这个类
package ar.ncantarini.mapa;
import android.app.Application;
public class MyApplication extends Application {
int id_mascota;
public int getId_mascota() {
return id_mascota;
}
public void setId_mascota(int id_mascota) {
this.id_mascota = id_mascota;
}
}
2 /在我的一些活动中:
// Calling Application class (see application tag in AndroidManifest.xml)
final MyApplication globalVariable = (MyApplication) getApplicationContext();
//Set name and email in global/application context
globalVariable.setId_mascota(1);
3 /在我做的其他活动中:
// Calling Application class (see application tag in AndroidManifest.xml)
final MyApplication globalVariable = (MyApplication) getApplicationContext();
// Get name and email from global/application context
final int name = globalVariable.getId_mascota();
//inside a method
4 /最后,在Manifest中我添加了android名称标签。
<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light.NoActionBar" >
<activity
每件事都运作良好。但我的问题是,现在我需要将“MyApplication”类移动到另一个打包调用“Utilities”,这不是 Android应用程序的“主要”打包。
移动这个课程后,我有测试更改清单:
1_android:name="Utilities.MyApplication"
2_android:name="Utilities$MyApplication"
3_android:name=".Utilities.MyApplication"
总是我有“无源查找”错误。当使用de“BroadcasteReceiver”类时,以及当我把它放在不是主要包装的包装箱中时,同样的问题出现在另一个项目中。在我的情况下,我的主要包装是ar.ncantarini.mapa。
编辑:在这里,当我将MyApplication类移动到Utilities包时,我添加了一张我一直有的错误的照片。
答案 0 :(得分:0)
在你的清单上,用点(。)开始声明你引用主包,你也可以声明你的Activity类的全名。
在你的情况下,它只是:
android:name="Utilities.MyApplication"
请注意,鼓励包名称为全小写。
答案 1 :(得分:0)
考虑到@MarcosVasconcelos的答案,我将它们结合起来,然后我找到了解决方案。关键是Android中包的名称应该是小写的。这就是全部。