Деятельность не называется - PullRequest
0 голосов
/ 30 декабря 2018

У меня есть функция, вызывающая действие, но действие не вызывается, и вместо этого вызывается MainActivity.Из того, что я вижу, нет ничего необычного в вызове.Я могу следовать цели полностью через исходный код действия, и я вижу, что цель - это желаемое действие.

Я создаю намерение:

Intent startNewActivityOpen2 = new Intent(this, com.assistek.ediary.TransitionLandscape.class);
setExtrasStartActivity(startNewActivityOpen2, extras);

Вот метод Iвызов:

protected void setExtrasStartActivity(Intent i, Bundle extras) {
    // copy over all extras
    if (extras != null) {
        if (!extras.isEmpty()) {
            i.putExtras(extras);
        }
    }

    i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    //I can see here that the the intent is correct
    startActivity(i);
    finish();

}

Logcat:

12-10 19: 09: 56.041 2857-2857 / com.assistek.ediary D / Базовая активность: ********** Класс паузы com.assistek.ediary.TransitionLandscape ********** Навигация паузы: true ********** Класс возобновления com.assistek.ediary.TransitionLandscape ********** Пауза класса com.assistek.ediary.TransitionLandscape ********** Пауза Навигация: ложь 12-10 19: 09: 56.061 539-9188 /?I / ActivityManager: START u0 {act = android.intent.action.MAIN cat = [android.intent.category.HOME] flg = 0x10000000 cmp = com.assistek.util.homelauncher / .HomeLauncherActivity} из pid 0 12-10 19: 09: 56.181 2857-2857 / com.assistek.ediary D / Базовая активность: ********** Фокус: ложь Активность: класс com.assistek.ediary.TransitionLandscape 12-10 19: 09: 56.191 1002-1006 /?D / dalvikvm: GC_CONCURRENT освобожден 479K, 12% свободен 7739K / 8708K, приостановлен 3 мс + 3 мс, всего 34 мс 12-10 19: 09: 56,191 539-22740 /?I / ActivityManager: START u0 {act = android.intent.action.MAIN cat = [android.intent.category.LAUNCHER] flg = 0x10000000 pkg = com.assistek.ediary cmp = com.assistek.ediary / .Home} из pid1002 12-10 20: 19: 49,371 1002-1006 /?D / dalvikvm: GC_CONCURRENT освобожден 842K, 11% свободен 7767K / 8708K, приостановлен 3 мс + 1 мс, всего 48 мс 12-10 20: 19: 49.501 539-620 /?D / dalvikvm: GC_FOR_ALLOC освобожден 241K, 19% свободен 16643K / 20352K, приостановлен 58 мс, всего 59 мс 12-10 20: 19: 49,501 539-620 /?I / dalvikvm-heap: Увеличение кучи (в случае фрагмента) до 16,531 МБ для выделения 251120 байт 12-10 20: 19: 49,561 539-620 /?D / dalvikvm: GC_FOR_ALLOC освободил 4K, 19% освободил 16884K / 20600K, приостановил 56мс, всего 56мс 12-10 20: 19: 49,621 539-620 /?D / dalvikvm: GC_FOR_ALLOC освободил 262K, 20% освободил 16621K / 20600K, сделал паузу 58 мс, всего 58 мс 12-10 20: 19: 49,621 539-27162 /?I / ActivityManager: moveTaskToBack: 5106 12-10 20: 19: 49.641 539-22745 /?I / ActivityManager: START u0 {act = android.intent.action.MAIN cat = [android.intent.category.HOME] flg = 0x10000000 cmp = com.assistek.util.homelauncher / .HomeLauncherActivity} из pid 0 12-10 20: 19: 49.661 6240-6240 / com.assistek.ediary D / Базовая активность: ********** Stop Navigate Away false

Почему вызывается Home Launcher?

РЕДАКТИРОВАТЬ: Если я вызываю другое действие, отображается правильное действие.

РЕДАКТИРОВАТЬ: Вот мой манифест

    <activity
        android:name=".TransitionLandscape"
        android:configChanges="orientation"
        android:label="@string/app_name"
        android:launchMode="singleTask"
        android:noHistory="true"
        android:screenOrientation="landscape"
        android:windowSoftInputMode="stateHidden">
    </activity>

Ответы [ 2 ]

0 голосов
/ 30 декабря 2018

Я не уверен на 100%, если это правильный ответ, но стоит попробовать,

    <activity
        android:name="com.assistek.ediary.TransitionLandscape"
        android:configChanges="orientation"
        android:label="@string/app_name"
        android:launchMode="singleTask"
        android:noHistory="true"
        android:screenOrientation="landscape"
        android:windowSoftInputMode="stateHidden">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

, а также убедиться, что вы переопределяете это, а не что-то еще,

@Override
protected void onCreate(Bundle savedInstanceState) {
}
0 голосов
/ 30 декабря 2018

Является ли com.assistek.ediary именем пакета вашего приложения?

Похоже, вы пытаетесь вызвать действие другого приложения, в котором HomeActivity является активностью средства запуска, поэтому вызывается его действие Home.

 Intent secondActivityIntent= new Intent(getApplicationContext(), SecondActivity.class);              
 intent.putExtra("myKey", "MyValue");
 context.startActivity(secondActivityIntent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...