2013-05-20 198 views
0

這個問題我已經搜索了所有相關的主題似乎沒有得到完美的回答。一般來說,我在「LoginActivity.class」啓動服務,顯然該服務可以停止在任何活動。在我的項目中,我在每個活動的onDestroy上都有一個StopService命令,按照我們的規則,服務將被停止。但是,事實上,在收到錯誤消息「無法關閉服務...」之後,設備彈出對話框「強制關閉...」。如何停止android服務?

爲了您的幫助,我的服務使用BroadcastReceiver來控制藍牙通信。希望聽到你們所有人的反饋。非常感謝你!

+1

郵政** **滿和堆棧跟蹤與沿一些代碼。 –

+0

必須有一些其他異常阻止它。粘貼一些代碼和堆棧跟蹤。 – Sandeep

+0

肯定會使用這個工作。或發佈您的logcat – Shadow

回答

-1

您可以使用它來停止服務

   @Override 
      public void onDestroy() 
     { 
    Toast.makeText(this, "Service has been Stopped", Toast.LENGTH_SHORT) 
    .show(); 
    stop(); 
    } 
+0

的OP的問題已經提到,他停在'的onDestroy服務()' – ozbek

+0

這裏是我的活動和服務: LoginActivity.class: ... //啓動藍牙服務 \t \t意向startService = new Intent(this,BTService.class); \t \t startService(startService); ... –

+0

這裏是我的活動和服務: 「LoginActivity.java」: 保護無效的onCreate(捆綁savedInstanceState){ ... //啓動藍牙服務 \t \t意向startService =新意圖(這一點, BTService.class); \t \t startService(startService); ...} 「GeneralInfoActivity.java」: 公共無效的onDestroy(){ ... stopService(新意圖(GeneralInfoActivity.this,BTService.class)); ...} 該服務用於設備與其他設備之間的藍牙交易。如果我沒有配對或啓動BT連接,退出應用程序會導致錯誤,但在完成事務後,退出應用程序即可。 ?? –