2013-03-25 13 views
2

我是Android上的新開發人員。我有一個應用程序在幾個Android設備上工作,但我發現在4.0.3 Android版本的Sony Tablet S上的活動生命週期中有一個奇怪的行爲。 我的應用程序有一個啓動B活動的A活動,問題是B啓動時A被暫停並銷燬,而其他設備暫停時恢復。當我通過後退按鈕從B活動回來時,A必須重新創建。Sony Tablet S上的不同行爲活動生命週期

任何想法?我已經搜索了很多關於這個問題,但我還沒有發現任何類似的問題。提前致謝!

+0

您應該始終認爲用戶離開的活動將被銷燬。那麼你的問題是什麼? – WarrenFaith 2013-03-25 18:50:20

+0

你可以發佈你用來創建和顯示ActivityB的代碼嗎? – AWT 2013-03-25 18:50:50

+0

嗨@WarrenFaith,我的主要問題是酶活性的採取了很多的時間來創建由於必須從互聯網在每次創建時下載一些文件。 – Eduardo 2013-03-26 10:46:05

回答

1

活動是否被破壞是由Android操作系統決定的,不僅取決於您的設備,還取決於當前的內存使用情況。這不是不可能的,你的活動被摧毀的設備上更快與更小的存儲單元或者有其他應用吃內存(也許不會被摧毀,因爲它們是從索尼修改操作系統的一部分的應用程序)。這可能發生,特別是如果你的活動A被重加權使用位圖...

0

我用來創建和顯示活動B的代碼如下:

legendButton.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(final View v) { 
     final Intent intent = new Intent(MainActivity.this, LegendActivity.class); 
     intent.putExtra(Constants.LEGEND, _legenditems); 
     startActivity(intent); 
    } 
    }); 
0

我觀察同樣的問題,與索尼的Xperia Z.我的調用活動(A)以意向調用本地相機(使用startActivityForResult(..))。 我所觀察是A被破壞,當用相機onActivtyResult(..)進行調用。

我仍在試圖弄清楚如何解決這個問題。

+0

你們每個人都能夠做到嗎? – zezba9000 2014-06-27 18:12:14

+0

已經有一段時間了 - 就我所知,我用一面旗幟來解決這個問題。 – araut 2014-06-28 18:04:09