Это не плохая практика, если это то, о чем вы спрашиваете.
Что плохая практика, например, наличие переменной контекста в поле stati c, это создаст протечь. Например:
public class App extends Application {
private static Context mContext;
public static Context getContext() {
return mContext;
}
@Override
public void onCreate() {
super.onCreate();
mContext = this
}
}
Это плохая практика. И android студия должна предупредить вас (stati c контекстные поля). Это может быть решено, например, с помощью WeakReference
.
Но так как метод вашего примера - stati c, а контекст предоставляется в качестве аргумента, в этом нет ничего плохого. Если вы хотите, чтобы метод был stati c, рекомендуется передавать объект действия / контекста в качестве параметра.
Если вы подозреваете, что есть утечка, вы можете переопределить метод onDestroy этого контекста, чтобы выяснить, когда есть утечка (onDestroy не будет вызван, так как на него все еще есть ссылка). Также, утечки могут быть найдены с помощью Memory Profiler и / или библиотеки LeakCanary.