Không thể sử dụng NDK cũ (android-ndk-r17c) sau khi nâng cấp Catalina do bảo mật mới


14

Sau khi nâng cấp lên macOS Catalina, dự án của tôi sẽ không được xây dựng nữa. Điều này là do Catalina tin rằng các nhị phân trong 'android-ndk-r17c' không phải từ một nhà phát triển đáng tin cậy.

Bạn nhận được các thông báo như: "Không thể mở được ld do vì nhà phát triển không thể xác minh được." "macOS không thể xác minh rằng ứng dụng này không có phần mềm độc hại"

Tôi phải sử dụng NDK cũ do các vấn đề với SDK thư viện openCV gốc và các NDK mới hơn. Họ đang làm việc với nó, nhưng SDK mới hơn vẫn chưa đủ ổn định với tôi.

Tôi đã có thể khiến "clang" và "clang ++" không thể hoạt động bằng cách vào khung bảo mật và nhấp vào "Cho phép mọi cách" trên các cảnh báo bảo mật. Tuy nhiên, khi thử điều này với "Id", tôi có thể vượt qua cảnh báo đầu tiên bằng cách nhấp vào "Cho phép dù sao" nhưng dường như nó được gọi sau đó và trong cuộc gọi tiếp theo, tôi không có tùy chọn cho phép mở.

Không có mã thực sự. Tôi mới có (và đã có từ lâu) tài liệu tham khảo NDK của Android Studio chỉ vào NDK cũ thông qua cấu hình.

Trong IDE từ NDK, không tải được "Id":

"Không thể mở được ldv vì nhà phát triển không thể xác minh được." "macOS không thể xác minh rằng ứng dụng này không có phần mềm độc hại"


Xem github.com/android/ndk/issues/1060 . Tôi không biết tại sao bạn chỉ có thể cho phép một số trong số họ mặc dù. Nó làm việc tốt cho tôi.
Dan Albert

Câu trả lời:


21

Tôi chỉ tìm thấy giải pháp.

Đó là một quá trình tẻ nhạt nhưng:

  1. MacOS: Mở tùy chọn hệ thống
  2. MacOS: Chuyển đến Bảo mật & Quyền riêng tư (hãy mở cái này, bạn sẽ cần nó cho toàn bộ quá trình)
  3. Đoàn kết: Đi và xây dựng dự án của bạn. Khi lỗi xuất hiện, nhấp vào "Hủy"
  4. MacOS: Trong cửa sổ Bảo mật & Quyền riêng tư - hãy đi và nhấp vào "Cho phép" gần lỗi "clang" - để hệ thống MacOS sẽ nhận ra ứng dụng và sử dụng nó.
  5. Lỗi sẽ xuất hiện trở lại, nhưng lần này sẽ yêu cầu bạn "Mở" nó. Nhấp vào "Mở"
  6. Việc xây dựng sẽ thất bại nhiều lần do nhiều phụ thuộc khác nhau, nhưng nó sẽ thất bại với các tệp khác nhau mà bạn sẽ cần cho phép như trong các bước trước.
  7. Xây dựng lại dự án của bạn.
  8. Nếu thất bại, hãy thực hiện lại các bước, cho đến khi nó ngừng thất bại. Mỗi lỗi bạn gặp phải với tệp không được nhận dạng sẽ khác nhau mỗi lần

2
bổ sung: Nếu bạn đã làm sudo spctl --master-disabletrước đó, tồn tại 3 tùy chọn bên dưới 'Cho phép tải xuống ứng dụng từ:', bạn nên chọn tùy chọn thứ hai có tên 'Cửa hàng ứng dụng và nhà phát triển được xác định' trong bước 4, để bạn có thể thấy 'Cho phép' và 'clang' lỗi.
lin Giang

Vui lòng thêm vào các hướng dẫn mà bạn cần có trên tab Chung về Bảo mật và Quyền riêng tư để xem thông báo bảo mật.
Steve

5

Để cho phép các ứng dụng được tải xuống từ mọi nơi trên MacOs Catalana, hãy làm điều này:

sudo spctl --master-disable

Điều này thực sự làm bất cứ điều gì? Tôi vẫn không thể chạy bất cứ điều gì
Luz

Điều này có thể loại bỏ một vài bước .. vì vậy chúng ta cần nhấn "allow" rồi "open" .. nếu không, mỗi lib được sử dụng bởi mỗi công cụ phải được cho phép đây là một quả táo ác mộng. hãy để chúng tôi làm điều đó trên mỗi thư mục cơ sở ..
Paschalis

Vì vậy, để "Bất cứ nơi nào" xuất hiện, bạn phải để lại mô-đun Bảo mật và quyền riêng tư. Tuy nhiên, bây giờ tôi vẫn nhận được thông báo "không thể xác minh", nhưng không cho phép hoặc mở ở bất cứ đâu.
UserOneFourTwo

3

Tôi muốn thêm vào câu trả lời của Mudassar Ashraf.

Nếu bạn không thấy tùy chọn « Cho phép » sau khi nhấp vào « Hủy », hãy chuyển «Cho phép các ứng dụng được tải xuống từ» trong cửa sổ Bảo mật sang « Cửa hàng ứng dụng và nhà phát triển được xác định ». Điều này bằng cách nào đó sẽ làm cho nút « Cho phép » xuất hiện. Sau đó chuyển nó trở lại « Bất cứ nơi nào ». Lặp lại nếu cần thiết.


1

Nếu vì lý do nào đó trong nút cửa sổ Bảo mật & Quyền riêng tư của bạn cho phép không xuất hiện thì chỉ cần di chuyển ndk của bạn sang thư mục khác và thử lại toàn bộ quá trình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.