Định cấu hình danh tính cho các dịch vụ gốc

SDV lấy thông tin nhận dạng của các gói dịch vụ và ứng dụng Java từ mã nhận dạng Android (AID) được tạo tự động. Vì các dịch vụ gốc, chẳng hạn như các lớp trừu tượng phần cứng (HAL) của nhà cung cấp, thiếu cơ chế tự động này, nên bạn phải định cấu hình các dịch vụ đó theo cách thủ công để liên kết một danh tính SDV với chương trình của từng dịch vụ.

Để liên kết một danh tính SDV với một chương trình dịch vụ gốc, hãy làm theo các bước sau:

  1. Xác định một AID duy nhất cho dịch vụ trong dải dành riêng cho phân vùng nơi dịch vụ đó được đặt, chẳng hạn như nhà cung cấp hoặc dải sản phẩm.

    Để biết thêm thông tin về các dải phân vùng cụ thể, hãy xem phần Định cấu hình AID.

    Xác định một AID riêng biệt cho từng dịch vụ gốc, thay vì chia sẻ một AID duy nhất trên nhiều dịch vụ. Vì danh tính dịch vụ được chỉ định cho một quy trình dịch vụ dựa trên AID của quy trình đó, nên việc chia sẻ AID sẽ dẫn đến việc chia sẻ danh tính dịch vụ và quyền uỷ quyền của các danh tính đó.

  2. Định cấu hình dịch vụ của bạn theo AID duy nhất mà bạn đã tạo bằng cách sử dụng lựa chọn user trong tệp .rc của dịch vụ.

    Ví dụ:

    service native_sdv_gateway_client_service /vendor/bin/native_sdv_gateway_client_service
        [..]
        user vendor_gateway_client
        [..]
    
  3. Liên kết giá trị bằng số của AID duy nhất với danh tính dịch vụ được chỉ định cho dịch vụ trong tệp cấu hình sdv_native_services_names của phân vùng nơi dịch vụ đó được đặt.

    Danh tính dịch vụ bao gồm tên gói, tên gói dịch vụ và tên phiên bản dịch vụ. Mã này được mã hoá dưới dạng một chuỗi có dạng packageName.serviceBundleName/serviceInstanceName.

    Ví dụ: nếu dịch vụ của bạn chạy trên phân vùng nhà cung cấp có AID vendor_gateway_client và có giá trị bằng số là 2902, thì bạn phải thêm ánh xạ vào tệp /vendor/etc/sdv_native_services_names:

    2902,android.sdv.samples.gateway.client.NativeTestApp/default