¿Cómo integrar la biblioteca de código de Matlab con Android?

Tengo un algoritmo y algún otro código que está en MATLAB y quiero usarlo en mi aplicación de Android.

¿Cómo puedo hacer esto?

  • ¿Puedo hacer un archivo jar de MATLAB para usarlo con Android?
  • Tengo que hacer otra cosa?

Si tiene un producto adicional, MATLAB Builder JA para Java , puede producir un archivo .jar de su código MATLAB.

Sin embargo, el archivo .jar requiere MATLAB Compiler Runtime (un componente libremente redistribuible que obtiene con MATLAB Compiler y productos MATLAB Builder) estar presente. El MCR tiene una huella mucho más grande de lo que es adecuado para el dispositivo Android típico (es como una copia de MATLAB en sí, sin la interfaz de usuario).

Podrías pensar en

  1. Ejecutar el archivo .jar de MATLAB de forma remota en un servidor y conectar la aplicación de Android, o
  2. En lugar de utilizar los productos MATLAB Compiler y Builder, utilice MATLAB Coder , que convertirá un subconjunto del lenguaje MATLAB directamente en código C. Este código C no requiere el MCR, y podría ser compilado para ejecutarse directamente en Android. Asegúrese de que su algoritmo MATLAB cae dentro o puede ser expresado en el subconjunto apropiado del lenguaje MATLAB.

Editar: A partir de R2015a, la funcionalidad de MATLAB Builder JA para Java ha sido reemplazada por un nuevo producto, MATLAB Compiler SDK .

Soy el desarrollador de Addi. http://addi.googlecode.com Addi se está convirtiendo rápidamente en un puerto completo de Octave (que es una herramienta de código abierto que utiliza la sintaxis de Matlab). Addi va a tener intentos para que otras aplicaciones lo utilicen como sus motores de la matemáticas o que trazan los motores. Por lo tanto, si puede ejecutar su código en Octave, muy pronto podrá ejecutarlo en Android.

Una nueva característica en Matlab 2014a:

http://www.mathworks.com/help/simulink/samsung-galaxy-android-devices.html

Ahora puede instalar directamente (conjunto limitado de) modelos a dispositivos Samsung Android, y esto debería funcionar realmente en cualquier dispositivo Android.

Nuestra única opción es obtener código C ++ del código M usando la caja de herramientas de MATLAB Coder , que genera código C y C ++ independiente del código MATLAB®. Soporta sólo un subconjunto de todas las funciones de Matlab, por lo tanto puede no ser adecuado para sus necesidades.

Tener código C puede compilarlo usando NDK. MATLAB Compiler no es una opción aquí.

Puede convertir código matlab en python y luego usar el código python en el android. Hay muchas herramientas para hacer esta conversión. Python va bien con android que matlab.

Usted tiene 2 opciones,

  1. Cree un JAR e incluya en su aplicación Java y comience a usarlo. (No he probado esto creando un JAR fuera de Eclipse)

  2. Puede codificar lo mismo en C y utilizar Android NDK para procesarlo. (Esto será más rápido y más seguro)

  • Crear jar para el proyecto androide en eclipse
  • Cómo crear un archivo jar desde android studio
  • Android - Agregar biblioteca externa al proyecto
  • Crear gran Jar (escritorio) de android / escritorio gdx proyecto
  • Cómo obtener el archivo JAR para la clase sun.misc.BASE64Encoder?
  • NoClassDefFoundError: Problemas con la vinculación de mi propio frasco al proyecto de Android
  • Cómo obtener NoClassDefFoundError cuando se utiliza common.lang.StringUtils en el código androide java?
  • Error al importar jar en un proyecto android
  • Android Dx advertencia: Ignorar el atributo InnerClasses para un problema de archivo interno anónimo jar
  • Bibliotecas Android / Java
  • Dependencias transicionales de AAR en Maven
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.