After looking at various info regarding singletons, global variables and extending application class, I have come up with what I believe is a workable solution, BUT I'd like to know if there is a reason NOT to do this.
I've created a class with:
public class GlobalVariables {
    private static GlobalVariables instance;
    private static Boolean testVar;
    //other private static variables.
    //setters
    public void setTestVar(Boolean vAR)
    {
       GlobalVariables.testVar = vAR;
    }
    //other similar setters from private static variables above.
    //getters
    public Boolean getTestVar() {
        return GlobalVariables.testVar;
    }
    //other similar getters from private static variables above.
    public static synchronized GlobalVariables getInstatnce() {
        if(instance==null) {
            instance=new GlobalVariables();
        }
        return instance;
    }
}
In my activity, service, broadcast receiver...:
private GlobalVariables g = GlobalVariables.getInstance();
// getting the value
Boolean bVar = g.getTestVar();
// do somethings with bVar.
...
bVar = true;
// set GlobalVariables.testVar
g.setTestVar(bVar);
Again, is there a reason NOT to use this for passing variables between activities, services, broadcastReceivers and whatever other classes?
 
     
     
    