It would be a terrible idea, to design it that way. Why don't make a proper class out of it and instantiate it?
Static functions shall only be used, when the function itself doesn't depend on some class variables. So, to have it cleanly solved and not to risk some kind of memory leaks/collisions between calls of it from different parts of your App, you basically have to either keep it the way you already have it and pass every parameter necessary to the function, or make a class (with non-static functions), instantiate it with the values you want and then only pass the something
values to the functions.
Other than that, there is no clean solution. I'd advise you against storing the values into public static
, because this could either lead that some stuff can't be released/cleaned up by the GC because the Canvas is still assigned in the static field or that one app may set it's values, then another do too and overwrites the first apps/acitvities settings and when the first app again calls the functions it gets unpredictable results.
Just a question as a side-note: Why do you want to keep it static, if that three variables are so often used/passed? non-static would make just more sense OOP wise