Utworzono odbiornik rozgłoszeniowy w głównym działaniu i usłudze w tle, która wysyła intencje transmisji. Aplikacja wywala za każdym razem staram się go uruchomić, a dziennik wyświetla się następujący komunikat o błędzie:Błąd Odbieranie emisji intencji Problem
10-04: 13: 30: 43.218: błąd/Android Runtime (695): java.lang.RuntimeException: Błąd odbioru nadawane Intent { action = com.client.gaitlink.CommunicationService.action.LOGIN_STATUS_UPDATE (posiada dodatki)} w [email protected]
komunikat jest wysyłany z transmisji Klasa CommunicationService w następującej metodzie:
private void announceLoginStatus(){
Intent intent = new Intent(LOGIN_STATUS_UPDATE);
intent.putExtra(SERVER_MESSAGE, mServerResponseMessage);
intent.putExtra(SESSION_STRING, mSessionString);
sendBroadcast(intent);
}
gdzie
String LOGIN_STATUS_UPDATE = "com.client.gaitlink.CommunicationService.action.LOGIN_STATUS_UPDATE"
w głównej działalności następujące broadcast reveiver jest zdefiniowana:
public class LoginStatusReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
String serverMessage = intent.getStringExtra(CommunicationService.SERVER_MESSAGE);
String sessionString = intent.getStringExtra(CommunicationService.SESSION_STRING);
userInfo.setSessionString(sessionString);
saveSettings();
}
}
i zarejestrowany w metodzie onResume:
IntentFilter loginStatusFilter;
loginStatusFilter = new IntentFilter(CommunicationService.LOGIN_STATUS_UPDATE);
loginStatusReceiver = new LoginStatusReceiver();
registerReceiver(loginStatusReceiver, loginStatusFilter);
a pliku manifestu ja ncludes:
<activity android:name=".GaitLink"
android:label="@string/app_name">
<intent-filter>
...
<action android:name="com.client.gaitlink.CommunicationService.action.LOGIN_STATUS_UPDATE" />
</intent-filter>
</activity>
Byłbym wdzięczny, gdyby ktoś mógł wyjaśnić, dlaczego Dziennik wyświetla powyższy komunikat, a aplikacja ulega awarii.
Dzięki!
Może mógłbyś nam powiedzieć, na czym polegał problem? – Buffalo