Могут ли процессы совместно использовать переменную в Android?

#android

#Android

Вопрос:

Я использую android: process для своего сервиса в AndroidManifest.xml Но я должен совместно использовать переменную с исходным процессом (основной графический интерфейс).

Я знаю, что совместное использование памяти между процессами невозможно. Поэтому я должен использовать что-то вроде общей памяти.

Итак, android: process также не может совместно использовать переменную? Даже несмотря на статическую переменную?

Ответ №1:

просто обмен данными возможен через

Строковые данные =»как бы вы ни хотели называть свою базу данных»

 context.getApplicationContext().getSharedPreferences(data, Context.MODE_PRIVATE).get("variableName")
 ... .set("variableName","variable");
  

если вы также хотите реагировать на события:

 LocalBroadcastManager.getInstance(context).sendBroadcast(new Intent("action_value").putExtra("key","value"));
  

и

IntentFilter IFilter=new IntentFilter(); IFilter.add(«action_value») //необходимый белый список для каждого получателя

 LocalBroadcastManager.getInstance(context).registerReceiver(new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                String action = intent.getAction();
                //do Stuffs
            }
        },iFilter);