mam 3 Działania - , B i C.Działalność rozpoczął startActivityForResult() nie wraca do wywoływania Aktywny
Krótko mówiąc, działanie A rozpoczyna działanie B, następnie A również rozpoczyna działanie C i oczekuje wyniku z C, ale nigdy go nie otrzymuje.
Oto workflow aplikacja:
aktywny A jest uruchomiona na starcie aplikacji i rozpoczyna aktywny B (nie dla wyniku, po prostu startActivity()) w onCreate.
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); startActivity(new Intent(getApplicationContext(), ActivityB.class)); }
aktywny A, a następnie również rozpoczyna się działanie C dalej w kodzie, to czas wpływającej startActivityForResult(), a aktywność A ma również onActivityResult.
Intent intent = new Intent(getApplicationContext(), ActivityC.class); startActivityForResult(intent, 0);
i
protected void onActivityResult(int requestCode, int resultCode, Intent data) { ... }
Działanie C wykorzystuje setResult() i koniec(), aby powrócić pewne informacje, które powinny przejść z powrotem do aktywności A, ponieważ aktywność Wywołany startActivityForResult().
Intent intent = new Intent(); intent.putExtra("encryption", encryption); setResult(56, intent); finish();
ALE workflow milknie w kroku 3 - Działanie A za onActivityResult nigdy nazywa (nie jest B dla tej sprawy), choć aktywny A jest jednym począwszy C dla wyniku. Nie wiem, czy działanie B utrudnia komunikację A i C, czy też może być problem. Każda pomoc jest doceniana.
jej tak trudno zrozumieć .... Działalność B następnie korzysta z Aktywności A, aby nawiązać połączenie z serwisem internetowym, a jeśli Aktywność A określa, że logowanie jest konieczne, rozpoczyna działanie C –
Edytowane pytanie w celu uproszczenia. Zasadniczo działanie A rozpoczyna działanie B, następnie A również rozpoczyna działanie C i chce uzyskać wynik z C, ale nigdy go nie otrzymuje. – Gady
StartActivityforresult przychodzi w swojej działalności B, od której zaczyna się działanie i wraca na onactivityresult –