Изучаю Android studio по мануалам из инета, в одной из статей, кстати достаточно свежих, там Android и 10 и 11 рассматриваются.
Рассматривается пример написания собственного кода на жаве, для добавления его в любой уже существующий APK, разобранный с помощью apktools, а потом его компиляция с помощью родного жавовского компилятора javac.
Вот кусок кода:
package com.example.test;
import android.content.Context;
import android.widget.Toast;
public class Payload {
public static void run(Activity activity) {
Toast.makeText(context, "Hello world!", Toast.LENGTH_LONG).show();
}
}
Компилирую командой:
javac -classpath "c:\Program Files\Android\Android Studio\plugins\android
\lib\android.jar" c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example\test\test.java
Ну и сразу ничего и не компилируется, вывод от выполнения команды:
c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example
\test\payload.java:4: error: package android.widget does not exist
import android.widget.Toast;
^
c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example
\test\test.java:6: error: cannot find symbol
public static void run(Activity activity) {
^
symbol: class Activity
location: class Payload
c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example
\test\payload.java:7: error: cannot find symbol
Toast.makeText(Context, "Hello World!", Toast.LENGTH_LONG).show();
^
symbol: variable Context
location: class Payload
c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example
\test\payload.java:7: error: cannot find symbol
Toast.makeText(Context, "Hello World!", Toast.LENGTH_LONG).show();
^
symbol: variable Toast
location: class Payload
c:\Users\User\AndroidStudioProjects\Test\app\src\main\java\com\example
\test\test.java:7: error: cannot find symbol
Toast.makeText(Context, "Hello World!", Toast.LENGTH_LONG).show();
^
symbol: variable Toast
location: class Test
6 errors
т.е. этот код по мысли автора самостоятелен и независим от проекта того APK, куда он встраивается, но что-то не работает.