Получить строку из файла ресурсов

Доброго времени суток!

Пишу клиент серверное приложение, используя систему контроля версий. Чтобы ненароком не выгрузить ничего лишнего, использую файл ресурсов в котором храню String записи для конфигов(пароли, юзера, адреса и т.д.). Как полагается, внес этот файл в .gitignore, а в коде получаю данные из него. Но сейчас столкнулся с проблемой. Вылезает ошибка

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getString(int)' on a null object reference

Есть класс раз:

public class Raz extends AppCompatActivity {

    private String stringResponse;

    private class MyCount2Thread implements Runnable{

        @Override
        public void run() {
            Log.e("Отслеживаю потоки", "поток " + Thread.currentThread() + Thread.currentThread().getName());
            //String loginUrl = getBaseContext().getString(R.string.server) + "count2"; Не работает
            String loginUrl = "http://777.777.77.77:7777/count2" // Работает
            try {
                URL obj = new URL(loginUrl);
                HttpURLConnection conn = (HttpURLConnection) obj.openConnection();
                conn.setRequestMethod("GET");
                conn.setRequestProperty("User-Agent", "Mozilla/5.0");
                conn.setRequestProperty("Accept-Charset", "UTF-8");

                InputStream response = conn.getInputStream();
                Scanner s = new Scanner(response).useDelimiter("\\A");
                stringResponse = s.hasNext() ? s.next() : "";
                Log.e("  _-_-_response_-_-_  ", stringResponse);

                response.close();
                conn.disconnect();
            } catch (Exception e) {
                System.out.println(e);
            }
        }
    }

    public String checkVisitors() {
        Thread myThread = new Thread(new MyCount2Thread());
        myThread.start();
        try {
            myThread.join();
            Log.e("Отслеживаю потоки", "Мы снова в мэйне " + Thread.currentThread());
        } catch (InterruptedException e) {
        }
        return stringResponse;
    }

У этого класса есть метод checkVisitors().

Есть класс два:

public class Dva extends AppCompatActivity {

        private String stringResponse;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_playground);
    
            TextView statusRoom2 = findViewById(R.id.room2tv);
    
            String amountVisitors = new Raz().checkVisitors();
            String previewStatus = "Cейчас в комнате " + num + " человеков.";
            statusRoom2.setText(previewStatus);
    
        }
    }

Этот класс обращается к методу класса Раз, получая такую ошибку. Все потоки работают и проблема точно не на стороне АПИ.

Изначально я вообще использовал просто .getString(R.string.server), но почитав похожие примеры с фрагментами понял что нужен контекст или активити. Стандартные getContext() и getActivity() мне не доступны.

Подскажите пожалуйста как можно исправить данную проблему.

Заранее спасибо!


Ответы (0 шт):