tree: 3aea103431820d03c70d03b078159dd9f03aa118 [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. apex_manifest.v32.json
  8. apex_manifest.v33.json
  9. CleanSpec.mk
  10. com.android.vndk.current.pem
  11. com.android.vndk.current.pk8
  12. com.android.vndk.current.pubkey
  13. com.android.vndk.current.x509.pem
  14. com.android.vndk.v28.pem
  15. com.android.vndk.v28.pk8
  16. com.android.vndk.v28.pubkey
  17. com.android.vndk.v28.x509.pem
  18. com.android.vndk.v29.pem
  19. com.android.vndk.v29.pk8
  20. com.android.vndk.v29.pubkey
  21. com.android.vndk.v29.x509.pem
  22. com.android.vndk.v30.pem
  23. com.android.vndk.v30.pk8
  24. com.android.vndk.v30.pubkey
  25. com.android.vndk.v30.x509.pem
  26. com.android.vndk.v31.pem
  27. com.android.vndk.v31.pk8
  28. com.android.vndk.v31.pubkey
  29. com.android.vndk.v31.x509.pem
  30. com.android.vndk.v32.pem
  31. com.android.vndk.v32.pk8
  32. com.android.vndk.v32.pubkey
  33. com.android.vndk.v32.x509.pem
  34. com.android.vndk.v33.pem
  35. com.android.vndk.v33.pk8
  36. com.android.vndk.v33.pubkey
  37. com.android.vndk.v33.x509.pem
  38. 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