Điểm:0

BlueZ đưa ra lỗi 'Thiếu quyền CAP_NET_ADMIN'

lá cờ tn

Tôi cần xác định nguồn gốc của vấn đề. Thông báo lỗi là:

qt.bluetooth.bluez: Thiếu quyền CAP_NET_ADMIN. Không thể xác định địa chỉ được tìm thấy thuộc loại ngẫu nhiên hay công khai.
qt.bluetooth.bluez: Lỗi quét SDP QProcess::NormalExit 3

Mã C/C++ của tôi, dựa trên QT, quét "dịch vụ bluetooth" và không hoàn tất. Nó chỉ hết thời gian như bình thường khi quá trình quét hoàn tất.

Mặt khác, mã của tôi hoạt động như mong đợi, do đó không có vấn đề gì về hệ điều hành ...
Lỗi này được đăng bởi "bluez" - vậy tại sao bạn không xem xét lỗi đó trước? 
Tôi đã hy vọng ai đó biết câu trả lời ...

Tôi sẽ chọn bluez séc.  

vidarlo avatar
lá cờ om
Vui lòng thêm thông tin liên quan hơn, chẳng hạn như phiên bản Ubuntu bạn đang sử dụng và bạn đang cố gắng làm gì khi có thông báo lỗi cho câu hỏi. Nhấn [Chỉnh sửa] để cập nhật t để thêm chi tiết.
cocomac avatar
lá cờ cn
Vâng, Bluez thuộc chủ đề ở đây, giả sử bạn đang sử dụng Ubuntu hoặc một phiên bản phái sinh chính thức, như Kubuntu. Nhưng lỗi một dòng đó không đủ để xác định hoặc khắc phục sự cố. Vui lòng [chỉnh sửa] câu hỏi của bạn để bao gồm nguyên nhân gây ra lỗi này và hệ điều hành bạn có.
Nmath avatar
lá cờ ng
Các câu hỏi về Hỏi Ubuntu thuộc về https://meta.askubuntu.com/ Nếu bạn có câu hỏi về Ubuntu, hãy đăng lên trang web chính và bao gồm các chi tiết rõ ràng có thể lặp lại về sự cố bạn đang gặp phải. Thêm ngữ cảnh, giải thích những gì bạn đang cố gắng thực hiện và tất cả các bước cần thiết để tái tạo sự cố.
mchid avatar
lá cờ bo
Các câu hỏi về Bluez nằm trong chủ đề ở đây nhưng các câu hỏi về việc đặt câu hỏi về Bluez thì lạc đề.
Điểm:0
lá cờ tn

Đây là một phần giải thích tại sao điều này xảy ra.

https://unix.stackexchange.com/questions/96106/bluetooth-le-scan-as-non-root

Đây là nhận của tôi về nó: Hệ thống phân cấp cuộc gọi bluetooth thực tế dường như là:

QT triển khai (thư viện) của Bluetooth được gọi là "Bluetooth (mô-đun).
Lưu ý rằng mô-đun này KHÔNG giống nhau trong mọi phiên bản QT và nó thực sự bị thiếu trong một số phiên bản.

"Thư viện" mô-đun QT là bản sao / sửa đổi QT của "bluez".

"bluez" dựa trên "hci".

Lưu ý - Tôi đã sử dụng trực tiếp "hci", bỏ qua "bluez" và không tìm thấy bất kỳ sự cố nào khi sử dụng trực tiếp. Trên thực tế, việc triển khai QT bị thiếu khi đặt lại vật lý "Thiết bị Bluetooth được tìm thấy với cuộc gọi thành công cuối cùng cho chúng". Vì vậy, tôi sử dụng "hci" để đặt lại cơ sở dữ liệu không xác định của thiết bị Bluetooth được tìm thấy lần trước.

Bây giờ có các ví dụ về QT C/C++ ví dụ btscanner hoạt động như mong đợi - trả về các thiết bị lân cận và "dịch vụ" của nó btchat về cơ bản cũng vậy, nhưng không thành công với lỗi trên.

Cả hai ví dụ này chỉ thực hiện ba TÍN HIỆU bắt đầu tìm thấy thiết bị đã kết thúc

**KHÔNG CÓ TÍN HIỆU "thiết bị được tìm thấy" ** trong btchat, có trong btscanner!!

Do đó, "vấn đề" xảy ra với việc triển khai btchat của "bluez" và btchat sử dụng các chức năng QT KHÁC - thêm một lớp KHÁC để gọi/sử dụng "bluez"...

Vì việc sử dụng các chức năng QT là trong thời gian thực nên việc tìm ra trình tự của các cuộc gọi và nơi nó bị kẹt là một thách thức.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.