Duda android y linux.

Iniciado por lordluisiv, 3 Enero 2020, 18:49 PM

0 Miembros y 1 Visitante están viendo este tema.

lordluisiv

Buenas a todos espero que estén bien, la duda que tengo es que si android en el fondo tiene la base de linux osea su kernel(con muchas modificaciones por cierto).
¿es posible ejecutar un binario compilado con linux en android?.

Osea que si compiló algo en Ubuntu(ejemplo), ¿lo podre correr en android?.
Esa es mi duda y me baso en la teoría que si está hecho con linux debe funcionar jeje.


engel lex

hay posibilidad, pero no es simple, primero necesitas el telefono rooteado, segundo el ejecutable debe estar compilado para la arquitectura correcta (en pc se compilará para x86 o x64, necesitas compilar para ARM y no cualquier ARM sino el especifico del telefono)

tal vez necesites compilar el archivo con un moton de modificaciones para que tenga las rutas y api correctos..
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

lordluisiv

Ah... ok ya veo...
Pensé que solo podía compilar y ya jaja. Bueno tendré que morir con Java y los sdk  de android entonces? Siempre me a gustado más c++ pero no encuentro como

engel lex

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

B€T€B€



Como te ha dicho engel lex es más complejo de lo que pudiera parecer...

@XSStringManolo

Cita de: lordluisiv en  3 Enero 2020, 19:30 PM
Ah... ok ya veo...
Pensé que solo podía compilar y ya jaja. Bueno tendré que morir con Java y los sdk  de android entonces? Siempre me a gustado más c++ pero no encuentro como
Si no te gusta Java tiene Kotlin, interfaces a javascript desde Java o el proyecto Scripting Languajes For Android (Python, Perl, Lua, javascript, Bash, JRuby...) entre otras alternativas como instalar un servidor en Android que corra PHP o Node.js
https://github.com/kuri65536/sl4a

También hay compiladores en Android que te permiten programar con C/C++ y correr directamente el código.

También hay otra alternativa que es la de usar los propios motores de los navegadores para correr javascript sin necesidad de interfaz a Java. Y solo escribir el código que utilize las funciones de Android con Java(amplie las barreras de los navegadores). El resto todo con javascript.

Casidiablo

Lo usual, si quieres escribir programas para android es hacerlo en Java (o Kotlin). Lo que estarías programando en ese caso sería una aplicación como tal. Y probablemente eso es lo que querías preguntar.

Ahora, para entrar en el tema de Linux como tal, sí se pueden compilar programas para correrlos directamente en Android (sin interfaz gráfica, o sea, solo por línea de comandos). Usualmente necesitas un toolchain con el que puedas compilar para la arquitectura arm (usualmente C, C++, pero seguro también se puede en rust y otros lenguajes), y luego asegurarte de enlazar estáticamente las dependencias de tu programa, y luego correrlosd desde la línea de comandos (bien sea desde un "adb shell" o usando Termux), pero en general es muy tedioso. Esto solo es recomendado si sabes lo que estás haciendo y no lo puedes hacer con una aplicación de Android.