Я хочу знать, что происходит в следующем случае + FIX.Android, startAcitivity для результата производит странный поток
Как-то после вызова
fragment.startActivityForResult
-> кода достигает первый onActivityResult
(на фрагмент, с результатом 0 = Отменено), то внутри второй активности.
То же самое, если я использую getActivity()
. startActivityForResult
.. Я проверил с помощью отладчика. После того, как я отвечу от второй операции, код не достигнет onActivityResult
(например, он был «поглощен»?)
Я создаю приложение Launcher, у меня в работе есть немного дерьма в Manifest
, но не думаю, что это оттуда ,
<activity android:name=".ui.home.HomeActivity"
android:launchMode="singleTask"
android:stateNotNeeded="true"
android:screenOrientation="portrait"
android:excludeFromRecents="true"/>
<activity android:name=".ui.apps.AppsActivity"
android:launchMode="singleTask"
android:stateNotNeeded="true"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden"/>
Это, как я создаю намерение
intent = new Intent(getActivity(), AppsActivity.class);
intent.putExtra(AppsActivity.KEY_PICK_APP, true);
getActivity().startActivityForResult(intent,BottomShortcutsFragment.REQUEST_CODE_PICK_APP);
Это, как я отвечаю
Intent intent = new Intent();
intent.putExtra(KEY_SELECTED_APP, packageName);
setResult(Activity.RESULT_OK, intent);
finish();
UPDATE # 1 Это из манифеста, он работает, если удалить от второй активности андроид: launchMode = "singleTask"
<activity
android:name=".ui.apps.AppsActivity"
android:screenOrientation="portrait"
android:stateNotNeeded="true"
android:windowSoftInputMode="stateHidden" />
Пожалуйста берег все соответствующие методы. Весь код должен находиться внутри класса и метода. Это Java в конце концов. –