¿Cuál es el significado exacto de la versión de la plataforma Android NDK en comparación con el nivel API?

Tengo una aplicación de Android con minSdkVersion.apiLevel establecido en 18 targetSdkVersion.apiLevel establecido en 23. En consecuencia, establezco la platformVersion NDVSion a 18.

Desafortunadamente, después de agregar OpenSSL a la mezcla, la biblioteca JNI ahora falla al vincular:

 /Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'signal' /Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr' /Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr' /Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function open_console: error: undefined reference to 'tcgetattr' 

El problema desaparece si se establece platformVersion a 21 (no funciona en 19).

¿Qué significa esto para la aplicación de Android si tiene un nivel de API de 18, pero la biblioteca de JNI se vinculó para 21? ¿Se bloqueará en el lanzamiento en un dispositivo con 4.3?

No puedo imaginar el símbolo de signal que falta de 4.3 sin embargo. ¿Es esto un error NDK?

Esto es exactamente lo que le sucederá a su biblioteca compartida cuando lo instale en android-20 o anterior: no se cargará. No debería sorprendernos que la signal estuviera ausente: el tiempo de ejecución de Android nunca fue diseñado para ejecutar herramientas de línea de comandos como curl.

  • Error de protocolo desconocido con conexión HTTPS en android
  • Cómo utilizar OpenSSL Library en la aplicación ANDROID
  • Actualizar la aplicación de Android a la versión más reciente de OpenSSL
  • ¿Cómo construir OpenSSL como biblioteca compartida no versionada para Android?
  • Mensaje de advertencia de Google Play y OpenSSL
  • Android ssl: javax.net.ssl.SSLPeerUnverifiedException: Ningún certificado de igual (una vez más)
  • Construir Android openssl usando NDK no hace los archivos de ensamblaje arm4 correctamente
  • CertificateException - OpenSSLX509CertificateFactory $ ParsingException
  • Construyendo OpenSSL en Android NDK
  • Cómo actualizar la versión de OpenSSL en CSipSimple?
  • Cómo construir OpenSSL para generar libcrypto.a con Android NDK y Windows
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.