Мне нужно решить простой вопрос, но я не уверен, как это сделать.
У меня есть класс, расширяющий Service, который запускает поток, ищущий соединение TCP.Если он приходит, он читает входное сообщение.
Если входное сообщение «СТАРТ», я запускаю действие следующим образом:
Intent dialogIntent = new Intent(getBaseContext(), VoIPCall.class);
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
dialogIntent.putExtra("inetAddress", clientSocket.getInetAddress());
getApplication().startActivity(dialogIntent);
Пока это действие выполняется,Сервис продолжает работать.В какой-то момент я могу зарезервировать «СТОП».Я хотел бы вызвать метод в ранее созданном Activity, но я не уверен, как с ним взаимодействовать.
Я не хочу использовать статический метод.Как я могу это сделать?
Большое спасибо,
РЕДАКТИРОВАТЬ: я изменил свой код на это:
Intent dialogIntent = new Intent("com.voip.rudy.START_CALL");
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
dialogIntent.putExtra("inetAddress", clientSocket.getInetAddress());
getApplication().startActivity(dialogIntent);
И в манифесте:
<activity android:name=".VoIPCall">
<intent-filter>
<action android:name="com.voip.rudy.START_CALL" />
<action android:name="com.voip.rudy.STOP_CALL" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<category android:name="android.intent.category.DEFAULT" /> was required to avoid having it crash.
РЕДАКТИРОВАТЬ:
Данное решение исправило мою проблему, но я хотел фактически воздействовать на переменные-члены в этом классе, которые были ранее инициализированы.Скажем, я вызываю конструктор, затем я хотел бы вернуться к этому действию и воздействовать на переменные-члены.
Переменные-члены не инициализируются, когда я вызываю одно действие за другим, создается впечатление, что создается новое действиекак-то.Будут ли в любом случае действовать те же действия и держать объекты в целости, пожалуйста?
Джеймс