OnCreate не восстанавливает связку (ноль) в сотах - PullRequest
0 голосов
/ 02 февраля 2012

У нас есть планшетное приложение, которое больше похоже на файловый менеджер, у нас есть различные фрагменты диалогов для поддержки различных функций.Недавно мы добавили поддержку обратного стека и поддержку ротации.

Мы делаем это с помощью метода onSaveInstanceState, а затем используем сохраненный экземпляр в OnCreate и восстанавливаем состояние приложения.Все отлично работает в нашей отладочной сборке. (Скомпилируйте и запустите приложение из eclipse).

Наша команда RE недавно настроила среду сборки, и теперь мы столкнулись с некоторыми очень странными проблемами с выпуском apk из этой среды.

В выпуске APk, пакет сохраняется в onSaveInstanceState, когда я нажимаю на Home на планшете, и возобновляю, нажимая на приложение снова.При возобновлении он приходит к OnCreate и запускает новое действие, как и ожидалось, но пакет имеет значение null.

Все это прекрасно работает в режиме отладки, я никогда не видел никаких проблем, не уверен, что является основной причиной,??серьезно делает что-то не так.

Ниже представлен файл манифеста Android.

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="com.autonomy.connected.action.DIALOG" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
    <service android:enabled="true" android:name="RestFullService" />
</application>  

Ниже приведен код, который просто сохраняетномер вкладки.

public void onSaveInstanceState(final Bundle outState)
{
outState.putInt("selectedTab", getActionBar().getSelectedTab().getPosition());
super.onSaveInstanceState(outState);
}
public void onCreate(final Bundle savedInstanceState)
{
     Directory.initializeDirectory();
     super.onCreate(savedInstanceState);
     if (savedInstanceState != null) 
     {
       restarted = true;
     }
    /*.... more code here ....*/
}
...