2016-11-30 65 views
-2

我是新來的android。我以前寫過一些應用程序,而且都運行良好。然而,這個應用程序運行非常緩慢,正常。例如。當我點擊設置時,會出現4秒。這裏是日誌我的android應用程序運行速度比應該慢。 「應用程序可能在其主線程上做了太多工作。」

I/Choreographer: Skipped 41 frames! The application may be doing too much work on its main thread. 

我/編舞:跳過了42幀!應用程序可能在其主線程上做了太多工作。 I /編舞:跳過53幀!應用程序可能在其主線程上做了太多工作。 我/編舞:跳過89幀!應用程序可能在其主線程上做了太多工作。

我的活動很簡單。它只是檢查用戶是否登錄。然後它將獲得SharedPreferences上的用戶名稱

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mNotLoginTextView = (TextView) findViewById(R.id.notLoginTextView); 

    prefs = getSharedPreferences(STUDENT_PREFS, 0); 
    int id = prefs.getInt("studentId", 0); // if not, id = 0 
    if(id == 0) 
    { 
     mNotLoginTextView.setText(R.string.not_login); 
     mNotLoginTextView.setEnabled(true); 
    } 
    else 
    { 
     String lastName = prefs.getString("lastName", null); 
     String firstName = prefs.getString("firstName", null); 
     mNotLoginTextView.setText("Have a nice day " + firstName + " " + lastName); 
     mNotLoginTextView.setTextSize(18); 
    } 

} 

感謝您的幫助。

更新: 的問題at the link above答案是沒有我的情況下

我沒有使用片段創建設置菜單,使其造成這一問題的工作。創建設置菜單的片段後,它的運行速度比以往更快。

回答

0

對於此解決方案,請確保應用程序沒有在後臺運行不必要的服務。並避免數據的mutation。增加heap size

相關問題