Saya rasa yang Anda butuhkan hanyalah membuat Kelas Aplikasi
[1] Semua variabel yang Anda ambil di Util, yang digunakan di hampir semua kelas lain, dapat diambil di kelas Aplikasi ini. Jadi variabel ini akan tersedia untuk semua kelas lainnya.
[2] Buat instance Singelton dari Kelas aplikasi . Hanya Google tentang hal itu.
[3] Juga buat Singleton of DataBaseHelper (jika memungkinkan dan dapat diterapkan), jadi, satu instance membantu Anda di mana saja.
Kelas Aplikasi adalah kelas Global di android, sehingga Anda dapat menggunakannya untuk menyimpan dan mengakses semua Data Global. misalnya :
public class AppData extends Application {
public static AppData appData;
public int currentUserId; // etc.
//Const.
public AppData() {
appData = this;
}
@Override
public void onCreate() {
super.onCreate();
loginPreferences = getSharedPreferences(
SPF_NAME, 0);
pathToSDCard = Environment.getExternalStorageDirectory().getAbsolutePath();
System.out.println("Path : " + pathToSDCard);
//etc.
}
// MOST IMP FOR GETTIN SINGELTON INSTANCE <<<---<<<---<<<---
public static AppData getAppData() {
return appData;
}
}
CARA MENGGUNAKANNYA, LIHAT INI
class ABC extends Activity {
AppData appData;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.xyz);
appData = AppData.getAppData();
...........
...........
appData.VARIABLE_NAME...
}
}
Satu hal lagi. Di AndroidMenifest.xml
...
...
<application // In Application Tag
android:name="PACKAGE_NAME.AppData" // << Add here class name in which you have extended Application
android:icon="@drawable/ic_launcher"
...
...