¿La convención de nomenclatura para el método de interfaz nativa de Java y el nombre del módulo?

Puedo seguir un tutorial de jni muy bien. Pero cuando cambio el nombre del método, me encuentro con problemas. ¿Hay alguna convención de nombres que deba seguir? El tutorial usó HelloJNI como el nombre del módulo y el nombre de la biblioteca. Solía "useaaacom".

Recibí excelentes comentarios sobre esto y estoy progresando. Tengo una pregunta relacionada; hágame saber si debo crear otra publicación para ello. Me gusta construir sobre esta aplicación, que se ejecuta en este punto. ¿Cómo llamo a funciones desde un controlador de dispositivo? Tengo el archivo de encabezado y el controlador se carga en mi imagen. Por "cómo" quiero decir, ¿necesito tener una copia del archivo de encabezado en mi proyecto? Este controlador de dispositivo está implementado por el proveedor, es decir, no forma parte de AOSP. Tengo una copia desde que descargué todo el proyecto de código abierto y lo construí. Entonces, lo que pregunto es qué necesito en mi apk para que la aplicación llame a las funciones que forman parte de un controlador de dispositivo activo.

Avíseme si debo explicarle alguna parte más, o si necesito publicar el archivo de encabezado o ...

Ya verifiqué que puedo abrir un controlador de dispositivo con las siguientes líneas de código:

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main(int argc, char **argv)
{
/* Our file descriptor */
int fd;
int rc = 0;
char *rd_buf[16];
printf("%s: entered\n", argv[0]);
/* Open the device */
fd = open("/dev/hello1", O_RDWR);
if ( fd == -1 ) {
perror("open failed");
rc = fd;
exit(-1);
}
printf("%s: open: successful\n", argv[0]);
/* Issue a read */
rc = read(fd, rd_buf, 0);
if ( rc == -1 ) {
perror("read failed");
close(fd);
exit(-1);
}
printf("%s: read: returning %d bytes!\n", argv[0], rc);
close(fd);
return 0;
}

Creo que necesito agregar el código anterior a mi carpeta jni en forma de un archivo fuente .c, y llamar a las funciones en el archivo de encabezado del controlador de mi dispositivo desde este archivo. Es posible que haya notado que el código anterior es para un controlador de dispositivo de prueba llamado "hello1". Voy a cambiar el nombre a mi controlador de dispositivo de destino.

Respuestas a la pregunta(2)

Su respuesta a la pregunta