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

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

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

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

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

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

Solutions Collecting From Web of "Ошибка: операция по умолчанию не найдена"

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

File -> Invalidate Caches / Restart... 

Я не могу прокомментировать, почему обновление 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> 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Удачи

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

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

  <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> 

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

Ничто выше не помогло мне. Через некоторое время я обнаружил, что 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> 

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

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

  1. Перейдите в Edit Configuration
  2. Установите параметр Launch Option на nothing

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

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

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

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

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

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

 <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.

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

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

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

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

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

удачи 🙂

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

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

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

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

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

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

Я начал с демонстрационного приложения и изменил его. Я изменяю путь 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 перезагрузился и начал функционировать, как ожидалось.

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

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

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

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

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

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


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


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

Я изменил свой 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, и это побудило меня определить намерение по умолчанию. Это дополнение решило мою проблему.

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

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

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

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

Это поможет кому-то, кто приземлился на этой странице, как я

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

Ошибка была в первой строке файла MainActivity.java

Вместо пакета com.example.myname.justjava;

В первой строке был пакет com.example.android.justjava;

Из кода, предоставленного для обучения

Устранение этого избавило от ошибки

Уродливый, но работал на меня:

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

(Удалите ic_launcher из библиотеки модулей)

был:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.mymodule" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name="com.example.mymodule.MainActivity" 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> </manifest> 

Теперь:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.mymodule" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" /> </manifest> 

Вам могут быть недостающие атрибуты. Обязательно включите эту активность в файл манифеста

При настройке нового проекта

Название компании должно заканчиваться как .app, например, должно быть android.example.com.app, и это не должно быть android.example.com

В моем случае в AndroidManifest.xml произошел неправильный стиль, как показано ниже. Удаление «o» письма над тегом приложения разрешено. По-видимому, Android Studio не обнаруживает ошибки типа в AndroidMainfest.xml

 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> o <application android:name=".AppName" android:allowBackup="false" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.Light.NoTitleBar">