tree: cd2234c9527948a9974d5e705e53fc84a5df2432 [path history] [tgz]
  1. Android.bp
  2. apex_manifest.current.json
  3. apex_manifest.v28.json
  4. apex_manifest.v29.json
  5. apex_manifest.v30.json
  6. apex_manifest.v31.json
  7. CleanSpec.mk
  8. com.android.vndk.current.pem
  9. com.android.vndk.current.pk8
  10. com.android.vndk.current.pubkey
  11. com.android.vndk.current.x509.pem
  12. com.android.vndk.v28.pem
  13. com.android.vndk.v28.pk8
  14. com.android.vndk.v28.pubkey
  15. com.android.vndk.v28.x509.pem
  16. com.android.vndk.v29.pem
  17. com.android.vndk.v29.pk8
  18. com.android.vndk.v29.pubkey
  19. com.android.vndk.v29.x509.pem
  20. com.android.vndk.v30.pem
  21. com.android.vndk.v30.pk8
  22. com.android.vndk.v30.pubkey
  23. com.android.vndk.v30.x509.pem
  24. com.android.vndk.v31.pem
  25. com.android.vndk.v31.pk8
  26. com.android.vndk.v31.pubkey
  27. com.android.vndk.v31.x509.pem
  28. README.md
apex/README.md

Add a new VNDK APEX

In this document we add a new VNDK APEX for version 30. When you follow this doc with different versions, change “30” to what you're adding. (eg. 31)

  1. Add a new definition in Android.bp
apex_vndk {
    name: "com.android.vndk.v30",
    manifest: "apex_manifest.v30.json",
    key: "com.android.vndk.v30.key",
    certificate: ":com.android.vndk.v30.certificate",
    vndk_version: "30",
    system_ext_specific: true,
    file_contexts: ":com.android.vndk-file_contexts",
}

apex_key {
    name: "com.android.vndk.v30.key",
    public_key: "com.android.vndk.v30.pubkey",
    private_key: "com.android.vndk.v30.pem",
}

android_app_certificate {
    name: "com.android.vndk.v30.certificate",
    certificate: "com.android.vndk.v30",
}
  1. Add apex_manifest.v30.json
{
  "name": "com.android.vndk.v30",
  "version": 1
}
  1. Add keys/ceritificate
openssl genrsa -out com.android.vndk.v30.pem 4096
avbtool extract_public_key --key com.android.vndk.v30.pem --output com.android.vndk.v30.pubkey
openssl req -x509 -newkey rsa:4096 -nodes -days 999999 -keyout key.pem -out com.android.vndk.v30.x509.pem

# Enter following info via the interactive prompts
# Country Name: US
# State: California
# Locality Name: Mountain View
# Organization Name: Android
# Organization Unit Name: Android
# Common Name: com.android.vndk
# Email address: android@android.com

openssl pkcs8 -topk8 -inform PEM -outform DER -in key.pem -out com.android.vndk.v30.pk8 -nocrypt

rm key.pem
  1. Verify
m com.android.vndk.v30