2010-05-26 34 views
34

Tôi đã theo dõi Local Service example do Google cung cấp, nhưng Context::bindService(...) của tôi luôn trả về false và có ServiceConnection::onServiceConnected cũng không bao giờ được gọi.Android Context.bindService luôn trả về false và đối tượng ServiceConnection không bao giờ được kích hoạt

Tôi hiểu rằng Context::bindService() trả về ngay lập tức, nhưng đối tượng ServiceConnection của tôi không bao giờ được kích hoạt.

Tôi không biết nếu những áp dụng

  1. hoạt động của tôi đang chạy bên trong một tabHost và tôi đã tự hỏi nếu điều đó có thể ảnh hưởng đến ràng buộc trong bất kỳ cách nào dịch vụ.
  2. Bản thân Dịch vụ có thể có sự cố, nhưng tôi có thể gọi dịch vụ bắt đầu cho cùng một dịch vụ với cùng một Intent và hoạt động như mong đợi.

Có ai có kinh nghiệm với điều này không? Hãy giúp tôi ra.

Xin cảm ơn, P.S. Tôi đang nhắm mục tiêu Android 1.6

+0

Sử dụng phối cảnh 'adb logcat', DDMS hoặc DDMS trong Eclipse và tìm kiếm * cảnh báo * tại thời điểm ràng buộc của bạn. Một ràng buộc không thành công thường dẫn đến cảnh báo. – CommonsWare

Trả lời

61

Vì vậy, cuối cùng tôi đã tìm ra. Nó chỉ ra rằng TabSpec cannot bind to activities

Sử dụng getApplicationContext(). BindService thay vì chỉ bindService về hoạt động bạn giải quyết vấn đề khi nó được sử dụng bối cảnh ứng dụng cấp độ cao hơn.

Hy vọng điều này sẽ giúp ai đó!

+0

THnaks, tôi đã có chính xác cùng một vấn đề :) –

+0

Vui mừng nó đã giúp bạn! – codinguser

+0

Tuyệt vời .... điều này đã giúp tôi ... cảm ơn anh chàng ... –

2

Tôi bây giờ đây là cũ, nhưng tôi đã có một vấn đề hơi khác nhau. Tôi đã tái cấu trúc gói dự án của mình. Vì vậy, tên đã thay đổi các tệp, nhưng Eclipse không cập nhật tệp kê khai. Vì vậy, tôi đã tự sửa tệp kê khai và thay đổi tên của gói ở đó.

+0

cảm ơn bạn! argh, quên để cập nhật rằng biểu hiện có thể lái xe một người đàn ông điên :(Tôi muốn có một lỗi trong nhật ký chỉ ra điều này ... – verboze

Các vấn đề liên quan