Вопрос:

Ошибка: операция по умолчанию не найдена

android intellij-idea android-studio

306334 просмотра

30 ответа

6728 Репутация автора

Я обновил IntelliJ Idea 12.0.4 до 12.10.

Теперь все модули в моем Android-проекте дают ошибку:

Ошибка: операция по умолчанию не найдена

Я вернулся к 12.0.4, и он работает.

Есть идеи ?? Я думаю, что это может быть связано с тем, что некоторые плагины не установлены, потому что единственная другая вещь могла быть локальной конфигурацией, но я удалил папку конфигурации для подтверждения и ничего не изменил.

Автор: Saad Farooq Источник Размещён: 05.04.2013 02:49

Ответы (30)


220 плюса

3813 Репутация автора

Я не могу прокомментировать, почему обновление IntelliJ может вызвать эту проблему, потому что я не использую ее.

Однако эта ошибка: «Функция по умолчанию не найдена», похоже, говорит вам, что у вас нет активности, объявленной в AndroidManifest.xml, которая помечена как основное действие, которое будет запущено при запуске приложения.

У вас должно быть хотя бы одно действие, которое выглядит примерно так:

<activity
        android:name="com.your.package.name.YourActivity"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

Если у вас нет хотя бы одного действия с таким фильтром намерений, скорее всего, вы увидите здесь сообщение об ошибке.

Вы должны добавить этот фильтр намерений в действие, которое вы хотите открыть при запуске приложения, и это должно устранить вашу проблему.

Автор: mattgmg1990 Размещён: 05.04.2013 03:16

587 плюса

12739 Репутация автора

Решение

Если вы видите эту ошибку после обновления версий IntelliJ IDEA или Android Studio или после создания нового APK, вам может понадобиться обновить кеш IDE.

File -> Invalidate Caches / Restart...
Автор: Sky Kelsey Размещён: 05.04.2013 03:18

43 плюса

4394 Репутация автора

Попробуйте щелкнуть правой кнопкой мыши по проекту и выбрать « Открыть настройки модуля» . Затем перейдите на вкладку « Источники » в своем модуле, найдите папку src , щелкните правой кнопкой мыши по ней и пометьте ее как « Источники» (синий цвет).

EDIT: в последующих версиях Android Studio нет вкладки источников, но вместо этого вы можете редактировать файл build.gradle : https://stackoverflow.com/a/22028681/1101730

Автор: Micer Размещён: 10.03.2014 06:44

2 плюса

699 Репутация автора

  1. Build -> Rebuild Project
  2. File -> Invalidate Caches.. -> Invalidate and restart

Меня устраивает. Перестройте проект, чтобы убедиться в отсутствии ошибок в проекте. Тогда мы можем аннулировать кеш.

Автор: Artyom Размещён: 07.07.2014 10:34

1 плюс

3987 Репутация автора

Я начал с демонстрационного приложения и изменил его. Я изменяю путь java внутри источника из com -> example -> foo в свой собственный и редактирует манифест; однако Android Studio (0.8.7) очень запутался.

Я пробовал все перечисленное выше, и ничто из этого не сработало для меня. Может быть, это еще хуже?

Моим окончательным решением было отредактировать <projectname>.imlв .ideaподкаталоге, открыв его в Android Studio (так называемый текстовый редактор).

До:

<content url="file://$MODULE_DIR$">
  <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" generated="true" />
</content>

Я (повторно) добавил каталог src (2-я строка). После:

<content url="file://$MODULE_DIR$">
  <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
  <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" generated="true" />
</content>

После его сохранения Android Studio перезагрузилась и начала функционировать, как ожидалось.

Автор: TrophyGeek Размещён: 26.08.2014 09:10

46 плюса

1937 Репутация автора

Правильный способ сделать это - добавить в файл манифеста следующее:

    <activity
        android:name="FULL_NAME_OF_YOUR_ACTIVITY"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

Это должно быть вставлено между:

<application> </application>

Нет необходимости в недействительности кешей.

Автор: Iurii Размещён: 09.01.2015 09:01

17 плюса

5357 Репутация автора

В Android Studio в разделе «Конфигурация запуска / отладки» -> Приложение для Android -> Общие -> Активность -> выберите параметр «Не запускать активность».

Автор: TouchBoarder Размещён: 25.01.2015 09:29

0 плюса

435 Репутация автора

Ну, я иногда не понимаю Android Studio ...

Я столкнулся с той же проблемой и попробовал, что здесь рассказали ответы, но безрезультатно. И затем я изменил одно: действие в моем фильтре-намерении имело имя действия все в шапках, и я сменил его на маленький и оставил только слово MAIN в шапках, и он решил проблему! Как абсурдно! Надеюсь, это поможет кому-то.

Автор: Anas Tasadduq Размещён: 23.07.2015 05:33

1 плюс

131 Репутация автора

После обновления Android Studio от 1.2.x до 1.3 у меня была такая же проблема, и я пробовал все предложения, но ничего не получилось. Тогда я сделал это:

Перейдите в Run / Debug Configurations. Выберите конфигурацию, которая дает ошибку и удалит ее. Создайте новый с тем же именем и настройками. После этого повторно подключите USB-кабель и запустите приложение.

Это решило проблему для меня.

Автор: Friso van der Made Размещён: 31.07.2015 11:14

1 плюс

6338 Репутация автора

Ошибка: операция по умолчанию не найдена

Я решил так:
Запустить >> Изменить конфигурацию >> Приложение для Android >> Введите путь к классу активности по умолчанию в поле «Запуск» «Редактировать окно».

Автор: Lokesh Tiwari Размещён: 19.09.2015 06:55

5 плюса

4248 Репутация автора

@TouchBoarder почти у него. Хотя выбор «Не запускать активность» не приводит к запуску ничего.

В Android Studio в разделе «Конфигурация запуска / отладки» -> Приложение для Android -> Общие -> Активность -> выберите параметр «Запуск:»

Выберите свою активность. Это не точно фиксирует предполагаемое поведение, а скорее переопределяет его правильно.

Редактируйте конфигурации запуска / отладки и укажите активность запуска

Автор: John Размещён: 21.09.2015 03:27

16 плюса

887 Репутация автора

Ничто выше не помогло мне. Через некоторое время я обнаружил, что IDEA изменила имена действий на верхний регистр. Подобно:

<intent-filter>
  <action android:name="ANDROID.INTENT.ACTION.MAIN"/>
  <category android:name="ANDROID.INTENT.CATEGORY.LAUNCHER"/>
</intent-filter>

После возвращения в нормальное состояние, IDEA распознает действие по умолчанию:

<intent-filter>
  <action android:name="android.intent.action.MAIN" />
  <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Автор: yuliskov Размещён: 09.10.2015 01:06

54 плюса

2538 Репутация автора

У приложения есть активность запуска по умолчанию?

возможно, это может быть ваша ошибка

введите описание изображения здесь

Шаг 1 : выберите «Редактировать конфигурации»

введите описание изображения здесь

Шаг 2 : следите за этим предупреждением: по умолчанию активность не найдена введите описание изображения здесь

Шаг 3 : выберите действие по умолчанию введите описание изображения здесь

введите описание изображения здесь

Шаг 3 : Сохраните изменения и завершите

введите описание изображения здесь

Удачи

введите описание изображения здесь

Автор: David Hackro Размещён: 17.10.2015 03:03

1 плюс

2583 Репутация автора

Недействительный кеш / перезагрузка


Просто перезагрузите


После этого ваше приложение должно быть запущено!

Автор: Orlando Herrera Размещён: 14.03.2016 02:56

2 плюса

520 Репутация автора

просто столкнулся с этой ошибкой на студии Android 2.1.2. разрешен путем добавления MAIN / LAUNCHER унаследованного фильтра к активности по умолчанию в манифесте вкуса , хотя фильтр уже находился в активности по умолчанию в манифесте по умолчанию. Это даже было в объединенном манифесте, но студия не может найти его, пока я не дублирую фильтр в обоих проявлениях.

Автор: mjollneer Размещён: 22.07.2016 02:32

2 плюса

21 Репутация автора

мой опыт: убедитесь, что весь ваш java-файл был indentify, если IDEA не указывает ваш java-файл, поэтому он не может понять, что означает «Активность»

удачи :)

введите описание изображения здесь

Автор: jianwei-x Размещён: 11.08.2016 04:58

4 плюса

426 Репутация автора

Если ваше приложение не имеет Activity (только сервис, например), измените параметр «Запуск» для запуска / отладки в «Nothing».

Автор: black Размещён: 06.09.2016 09:06

3 плюса

866 Репутация автора

Я изменил свой Intent-фильтр на

<intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

Просто добавьте параметр DEFAULT. Я использовал библиотеку Process Phoenix, и это побудило меня определить намерение по умолчанию. Это дополнение решило мою проблему.

Автор: Rorschach Размещён: 16.10.2016 05:15

4 плюса

3593 Репутация автора

Я нашел это в своем коде:

<context android:name=".MainActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</context>

Если вы посмотрите очень осторожно, это должно быть <activity android:name=".MainActivity">вместо этого.

По-видимому, я где-то реорганизовал «активность», и он также изменил имена в AndroidManifest.

Автор: Muz Размещён: 08.12.2016 09:16

3 плюса

1294 Репутация автора

Ну, я тоже получил эту ошибку,

Ошибка: операция по умолчанию не найдена

ну в моем случае это был для модуля износа. Мне не нужна работа там, так что я делаю просто

  1. перейдите в edit configuaration -> wear-> Launch Options-> Launch-> Nothing.
  2. Примените изменения. Нажмите «ОК».
  3. Удалите существующий код для активности по умолчанию из файла манифеста.

Примечание. Не забудьте очистить файлы Project и Sync Gradle.

Автор: PN10 Размещён: 23.12.2016 11:59

2 плюса

61 Репутация автора

Android Manifest.xml задает начальную активность, как показано ниже.

<intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
Автор: Linu S Размещён: 23.12.2016 12:05

3 плюса

1590 Репутация автора

в моем случае я реорганизовал переменную-член, которая была названа «активностью», я переименовал ее в «контекст» ... я узнал, что рефакторинг был создан для тегов активности в манифесте, и вместо этого я нашел их теги контекста ... это действительно глупо от Android Studio!

Автор: Ahmed Adel Ismail Размещён: 18.01.2017 12:08

18 плюса

193 Репутация автора

Если вы работаете над виджетами, это решение должно работать на вас:

  1. Идти к Edit Configuration
  2. Установите Launch Optionдляnothing
Автор: Kishan Vasoya Размещён: 23.01.2017 09:47

1 плюс

11 Репутация автора

Недавно я столкнулся с подобной проблемой. Проблема заключалась в файле activitymanifest xml. проверьте, правильно ли закрыты теги.

Автор: ragav subramanian Размещён: 27.08.2017 06:52

1 плюс

61 Репутация автора

Я столкнулся с той же проблемой. По некоторым причинам, Android-приложение заменило все android:nameатрибуты в большинстве файлов XML, включая манифест, android:subjectкоторый не распознан Android Studio.

введите описание изображения здесь

Как вы можете видеть на рисунке выше, IDE не распознает android:subjectатрибут. В результате он не сможет прочитать строки, которые указывают MainActivty.

Решение просто изменить каждый , android:subjectчтобы android:nameзатем Перестроить проект из меню Build -> Rebuild Project. Вы можете столкнуться с той же проблемой при восстановлении проекта, так что сделайте то же самое, что и выше.

Автор: Saif Hakeem Размещён: 28.08.2017 11:02

6 плюса

610 Репутация автора

Я получил эту ошибку.

И обнаружил, что в файле манифеста в активности запуска я не помещал actionи categoryв фильтр намерений.

Неправильный:

<activity
android:name=".VideoAdStarter"
android:label="@string/app_name">

    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />

</activity>

Правильный:

<activity
android:name=".VideoAdStarter"
android:label="@string/app_name">

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

</activity>
Автор: mehmoodnisar125 Размещён: 15.01.2018 07:44

1 плюс

76 Репутация автора

Иногда удаляется приложение для всех пользователей. Перейдите в список приложений в настройках, перейдите в свое приложение или прокрутите список до конца списка, а затем удалите его. Надеюсь это поможет

Автор: hemant patel Размещён: 22.03.2018 09:19

2 плюса

41 Репутация автора

Изменить androidmanifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.java2">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivityName">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Автор: Tasdemir Размещён: 30.03.2018 08:14

2 плюса

1306 Репутация автора

У меня такая же проблема в Android Studio 3.3. Canary 3. Project из Android Studio 3.0 стабильная версия работает правильно, но после того, как некоторые очистит / перестроит, она начинает показывать «Ошибка по умолчанию по умолчанию». Я попытался снова установить эту альфа-версию Android Studio: ошибка. Но затем запустил его в старом стабильном Android и с помощью apk install, и этот apk работает правильно.

Кроме того, мой проект был создан с помощью мгновенных приложений (базовые, функциональные, мгновенные, подкаталоги приложений). Я думаю, что эта Android-студия имеет некоторые проблемы с файлами Manifest.xml, разделенными на эти несколько каталогов.

Поэтому я изменил настройки: введите описание изображения здесь

Автор: Michał Ziobro Размещён: 13.07.2018 11:29

4 плюса

181 Репутация автора

Я нашел этот блог, который действительно исправил эту проблему в моем случае. Оказывается, вы должны добавить какие-то намерения:

<intent-filter>
    <action android:name="android.intent.action.MAIN"/>
    <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

Это было явно просто. Ссылка:

https://www.aboutonline.info/2018/08/error-running-app-default-activity-not-found-on-android-with-kotlin.html

Автор: Website Is Fun Размещён: 06.08.2018 11:30
Вопросы из категории :
32x32