Это происходит каждый раз, когда я обновляюсь, обычно по разным причинам: я только что обновился до Android Studio 4, я нацелен на android 5 / Api21 вверх. На этот раз моя активность вылетает при запуске с утверждением, что мое основное действие 'недоступно из класса android .app.Instrumentation'
Я не уверен, что такое 'android .app.Instrumentation' или есть ли в моем коде какое-то требование, зависимость или android студия, которая этого требует. Мой основной класс - publi c, поэтому он должен его видеть.
Объявление моего класса выглядит так:
public class AnthracitePlayer extends AppCompatActivity
и AppCompatActivity, что, как мне кажется, я использовал Удалить строку заголовка объявляется так:
public class AppCompatActivity extends FragmentActivity implements AppCompatCallback,
TaskStackBuilder.SupportParentable, ActionBarDrawerToggle.DelegateProvider {
, а мой метод создания начинается так:
Override
public void onCreate(Bundle savedInstanceState)
{
Log.d(TAG,"Entered onCreate");
super.onCreate(savedInstanceState);
Display display = getWindowManager().getDefaultDisplay();
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
String displayName = display.getName();
Я не уверен, что это нарушает работу инструментария. Следующая ошибка:
07-12 14: 32: 26.251 20528-20528 / totga.anthraciteplayerapi21 D / ResourcesManager: создание нового AssetManager и установка /data/app/totga.anthraciteplayerapi21-2/base .apk 07-12 14: 32: 26.341 20528-20528 / totga.anthraciteplayerapi21 D / Android Время выполнения: Завершение работы ВМ 07-12 14: 32: 26.341 20528-20528 / totga.anthraciteplayerapi21 E / Android Время выполнения: ФАТАЛЬНОЕ ИСКЛЮЧЕНИЕ: основной процесс: totga .anthraciteplayerapi21, PID: 20528 java .lang.RuntimeException: невозможно создать экземпляр действия ComponentInfo {totga.anthraciteplayerapi21 / totga.anthraciteplayerapi21.AnthracitePlayer}: java .lang.IlleplayerAccessanthracitexception: недоступен класс android .app.Instrumentation в android .app.ActivityThread.performLaunchActivity (ActivityThread. java: 2515) в android .app.ActivityThread.handleLaunchActivity (ActivityThread. java: 2723) в android .app.ActivityThread.access $ 900 (ActivityThread. java: 172) в android .app.ActivityThread $ H.handleMessa ge (ActivityThread. java: 1422) в android .os.Handler.dispatchMessage (Handler. java: 102) в android .os.Looper.l oop (Looper. java: 145 ) в android .app.ActivityThread.main (ActivityThread. java: 5832) в java .lang.reflect.Method.invoke (собственный метод) в java .lang.reflect.Method.invoke (Method . java: 372) на com. android .internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit. java: 1399) на com. android .internal.os.ZygoteInit.main (ZygoteInit. java: 1194) Вызвано: java .lang.IllegalAccessException: totga.anthraciteplayerapi21.AnthracitePlayer () недоступен из класса android .app.Instrumentation в java .lang.Class.newInstance (Class. java: 1647) в android .app.Instrumentation.newActivity (Instrumentation. java: 1079) в android .app.ActivityThread.performLaunchActivity (ActivityThread. java: 2505) в android .app.ActivityThread .handleLaunchActivity (ActivityThread. java: 2723) в android .app.ActivityThread.access $ 900 (ActivityThread. java: 172) в android .app.ActivityThread $ H.handleMessage (Ac ttivityThread. java: 1422) в android .os.Handler.dispatchMessage (Handler. java: 102) в android .os.Looper.l oop (Looper. java: 145) в android .app.ActivityThread.main (ActivityThread. java: 5832) в java .lang.reflect.Method.invoke (собственный метод) в java .lang.reflect.Method.invoke (Method. java: 372) на com. android .internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit. java: 1399) на com. android .internal.os.ZygoteInit.main (ZygoteInit. java : 1194)