正所專案一大,一個不注意就有可能發生這個情況,從錯誤訊息中
看不出來那裡導致它掛了。
最明顯的一行就是
Throwing OutOfMemoryError "Failed to allocate a 28 byte allocation with 571832 free bytes and 558KB until OOM
由上面一行,我可以知道是因為Out Of Memorry 造成的錯誤,一開始以為是資源檔太大
後面發現,原來是因為自己犯傻囉,我們先來看一下底下的示範CODE
MainActivity.java
public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Func1 f1=new Func1(); } }
Func1.java
public class Func1 { public Func1() { Func2 f2=new Func2(); } }
Func2.java
public class Func2 { public Func2() { Func1 f1=new Func1(); } }
沒錯,Fun1.java在建構子中呼叫Func2的建構子,Func2的建構子中
也呼叫了Func1的建構子,不斷的糾結下去就爆了,一啟動APP就立刻
crash的不明不白。
參考來源:
我自己
沒有留言:
張貼留言