2012-11-26 33 views
5

Tôi đang cố thêm điểm ngắt cho dịch vụ đang chạy trên một chuỗi riêng biệt. Bất kể tôi đặt điểm ngắt trong dịch vụ ở đâu, chúng luôn bị bỏ qua.Điểm dừng trong dịch vụ không hoạt động

Tôi chắc chắn rằng dịch vụ đang chạy như tôi thấy Log.e trong nhật ký. Chế độ gỡ lỗi của tôi cũng được sử dụng chính xác như bất kỳ điểm dừng nào trong chuỗi chính của ứng dụng hoạt động.

Tôi có thiếu gì đó không? Chế độ gỡ lỗi không được hỗ trợ cho các dịch vụ trong một chuỗi riêng biệt?

Tôi vừa cập nhật công cụ Eclipse và Android SDK lên các phiên bản mới nhất hiện nay.

Tôi đang thử nghiệm ứng dụng của mình trên thiết bị.

+1

bạn đang chạy các ứng dụng trong mô phỏng hoặc trên thiết bị? – Kai

+0

Tôi đang thử nghiệm mã của mình trên thiết bị – Rynardt

+3

Xem [link] này (http://www.helloandroid.com/tutorials/how-debug-service) –

Trả lời

17

android.os.Debug.waitForDebugger() đã thực hiện thủ thuật. Thêm dòng này trước dòng mã bạn muốn gỡ lỗi.

+2

Cảnh báo - Không để nguyên mã này trong mã sản xuất. Nếu bạn chạy dịch vụ của bạn và một trình gỡ lỗi thực sự không được đính kèm, thì bất kỳ mã nào sau dòng này sẽ không thực thi. –

+0

Quấn nó vào một 'if (BuildConfig.DEBUG == true)' – Aggressor

1

Hãy chắc chắn rằng bạn khai báo tên gói trong thẻ dịch vụ trong biểu hiện sử dụng Android: Quá trình thuộc tính, ví dụ:

<service android:name=".YourCoolService" 
      android:process="your.package.here"/> 
Các vấn đề liên quan