我試圖調試AppWidget但我在問題發生:d 如果沒有設置部件工作沒有ANR斷點和命令Log.v被完美執行。 然後我放置一個斷點上的方法的頂部:調試窗口小部件引起ANR
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "onReceive 1"); // BP on this line
super.onReceive(context, intent);
String action = intent.getAction();
// Checks on action and computations ...
Log.v(TAG, "onReceive 2");
updateWidget(context);
Log.v(TAG, "onReceive 3");
}
斷點停止執行如預期但隨後的進程死亡。 問題是斷點(我猜是xD)會導致ANR,ActivityManager會終止進程。這就是日誌:
01-07 14:32:38.886: ERROR/ActivityManager(72): ANR in com.salvo.wifiwidget
01-07 14:32:38.886: INFO/Process(72): Sending signal. PID: 475 SIG: 9
......
......
01-07 14:32:38.906: INFO/ActivityManager(72): Process com.salvo.wifiwidget (pid 475) has died.
這會導致調試停止。 所以問題是:有一種方法來調試小部件而不會導致ANR? 在此先感謝您的答案
嘿,你有沒有找到解決辦法呢? – span 2012-02-11 23:42:28