এটি আপনাকে যে applicationContext
কোনও জায়গা থেকে applicationContext
এটি ব্যবহার করতে পারে এমন অনুমতি পেতে আপনাকে যে কোনও জায়গা থেকে অ্যাক্সেস পাওয়া উচিত ; Toast
, getString()
, sharedPreferences
, ইত্যাদি
একক:
package com.domain.packagename;
import android.content.Context;
/**
* Created by Versa on 10.09.15.
*/
public class ApplicationContextSingleton {
private static PrefsContextSingleton mInstance;
private Context context;
public static ApplicationContextSingleton getInstance() {
if (mInstance == null) mInstance = getSync();
return mInstance;
}
private static synchronized ApplicationContextSingleton getSync() {
if (mInstance == null) mInstance = new PrefsContextSingleton();
return mInstance;
}
public void initialize(Context context) {
this.context = context;
}
public Context getApplicationContext() {
return context;
}
}
আপনার Application
সাবক্লাসে সিঙ্গলটনটি শুরু করুন :
package com.domain.packagename;
import android.app.Application;
/**
* Created by Versa on 25.08.15.
*/
public class mApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ApplicationContextSingleton.getInstance().initialize(this);
}
}
যদি আমি ভুল না করে, এটি আপনাকে অ্যাপ্লিকেশন ApplicationContextSingleton.getInstance.getApplicationContext();
কনটেক্সটকে সর্বত্র একটি হুক দেয়, আপনার সাথে এটি কল করুন যে কোনও মুহুর্তে এটি পরিষ্কার করা উচিত নয়, যেমন অ্যাপ্লিকেশন বন্ধ হয়ে যায়, এটি যাইহোক এটির সাথে চলে।
AndroidManifest.xml
এই Application
সাবক্লাসটি ব্যবহার করতে আপডেট করতে ভুলবেন না :
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.domain.packagename"
>
<application
android:allowBackup="true"
android:name=".mApplication" <!-- This is the important line -->
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:icon="@drawable/app_icon"
>
আপনি যদি এখানে কিছু ভুল দেখেন তবে দয়া করে আমাকে জানান, আপনাকে ধন্যবাদ। :)