Как удалить проект в android studio
Перейти к содержимому

Как удалить проект в android studio

  • автор:

Как я могу правильно удалить проект в Android Studio?

Я абсолютно новенький в Android разработке и в Android Studio (я в основном разработчик Java EE).

Таким образом, у меня есть следующая проблема: я создал новый проект в Android Studio и мне нужно его удалить. В Eclipse я просто выбираю свой проект и щелкаю правой кнопкой мыши на нем и удаляю его. Но я не могу найти эту операцию в Android Studio (после того, как я выбрал проект во вкладке раскрывающегося списка project).

Мне также кажется, что я не могу закрыть проект (как в Eclipse).

Почему? Что мне не хватает? Как мне удалить свой проект в Android Studio?

Поделиться Источник 28 марта 2016 в 14:32

2 ответа

Файл > Закрыть проект

переместите курсор мыши на проекте и нажмите кнопку Удалить клавиатуру.

this could help

Попробуйте также.

Поделиться 28 марта 2016 в 14:55

В меню ‘Файл’ вы получите опцию ‘Закрыть проект’. После закрытия проекта просто удалите проект с жесткого диска.

Удалить проект из Android Studio

Кто-нибудь знает, как удалить проект из Android Studio, чтобы повторно экспортировать его из Eclipse? До сих пор я пытался удалить все файлы gradle, связанные с проектом, что вызывает ошибку, когда Android Studio пытается открыть мой проект. Эти файлы не были расположены в папке AndriodStudioProjects, потому что я импортировал только проект, который он не перемещал. В основном, что я хотел бы сделать, это удалить файл из списка последних проектов в Android Studio, повторно экспортировать его из Eclipse и затем импортировать рабочий проект обратно в Android Studio.

inner_class7 12 июнь 2013, в 21:44
Поделиться
почему андроид студия настолько сложна и сложна в использовании?
AKh 12 июль 2014, в 00:38

@AKh Вероятно, потому что он все еще в бета-версии 0.8.0. Я копаю темную тему, хотя хотелось бы, чтобы было лучшее решение, чем восход луны в затмении. но затмение стало таким зрелым. Возможно, jetbrains слишком заняты поддержкой IntelliJ, эта Android-студия сейчас не так важна. Надеюсь, скоро выйдет полный v1.

kandroidj 12 июль 2014, в 02:21

Спасибо 🙂 .. Надеюсь, V1.0 будет лучше. Я долгое время являюсь пользователем затмения . Не уверен, что именно переход делает студию очень трудной в использовании, или вообще студия не соответствует стандарту .

AKh 14 июль 2014, в 23:08

Лично я думаю, что Android Studio намного проще в использовании, чем затмение, но это, конечно, по состоянию на 2016 год

Greg 27 фев. 2016, в 22:49

@inner_class7 inner_class7 — В настоящее время AndroidStudio версии 2.3.2 уже давно вышел из бета-версии. Все же у этого все еще есть эта слабость.

Jesse Chisholm 06 дек. 2016, в 22:38
Показать ещё 3 комментария
Поделиться:
android-studio

13 ответов

Лучший ответ

Файл > Закрыть проект

переместите курсор мыши на проект и нажмите кнопку «Удалить клавиатуру»:)

ИЗМЕНИТЬ попробуйте это решение, работает для меня

Udi Oshi 12 июнь 2013, в 20:25
Поделиться

не работает. , , Я закрыл проект, и проект выделяется синим цветом, и я нажимаю команду + удалить (Mac), и ничего не происходит

kandroidj 12 июнь 2013, в 18:57
см. мой ответ редактирования
Udi Oshi 12 июнь 2013, в 19:03

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

kandroidj 13 июнь 2013, в 02:13

Это сбило меня с толку и на Mac . во-первых, вы не можете щелкнуть по проекту, чтобы выбрать его, или он запускает проект . вы должны обмануть его, переместив курсор мыши, чтобы выделить, а затем убедиться, что он стики используют клавиши со стрелками на клавиатуре вверх / вниз, чтобы выделить тот, который вы хотите. Затем fn + delete, чтобы удалить его, потому что клавиатура Mac задерживается.

Dewey Vozel 25 фев. 2015, в 19:32
Это просто удаляет его из «Недавно открытых проектов» в Linux
Nicolas Raoul 13 янв. 2016, в 05:33
Ага. Если вы хотите удалить его файлы, просто удалите файлы из проводника.
Udi Oshi 13 янв. 2016, в 08:30

Кнопка удаления на проекте в окне проекта не работает. Удалить можно найти в контекстном меню проекта в сухарях.

Zon 11 апр. 2017, в 04:04
Показать ещё 5 комментариев

Это для Android Studio 1.0.2 (Windows7). Щелкните правой кнопкой мыши по проекту на панели проекта и удалите его.

Изображение 114052

Затем удалите папку проекта из вашей папки пользователя в разделе «AndroidStudioProject» с помощью проводника Windows.

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

Изображение 114053

Garry 20 янв. 2015, в 07:16
Поделиться
В этом меню нет опции «Удалить» (в Linux)
Nicolas Raoul 13 янв. 2016, в 05:34
@NicolasRaoul .. см. Первую строку моего ответа, в которой говорится «Windows7».
Garry 27 фев. 2016, в 17:57

В диалоговом окне «Добро пожаловать в Android Studio» вы можете выделить приложение, которое хотите удалить из Android Studio, и нажать «Удалить» на клавиатуре.

yiati 20 нояб. 2013, в 20:17
Поделиться
Это помогло мне удалить ненужные проекты из списка +1. Благодарю.
VikramV 09 апр. 2015, в 11:32

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

Ben 26 нояб. 2014, в 18:40
Поделиться

  • Перейдите в каталог проектов Android
C:\Users\HP\AndroidStudioProjects 

Изображение 114054

  • Удалите, который вам нужно удалить
  • Перезапустите Android Studio
  • Pacific P. Regmi 22 янв. 2015, в 17:56
    Поделиться

    Проект можно удалить из списка «последний проект», но он все равно останется в каталоге проекта. Чтобы удалить из списка проектов:

    • Закройте проект
    • Выделите проект в списке «недавний проект»
    • Нажмите Backspace (NOT Delete!)

    Чтобы полностью удалить проект:

    • Элемент списка
    • Используйте проводник Windows File Explorer для перехода в каталог проекта Android Studio (обычно в «x:\Users\YourName\AndroidStudioProjects» )
    • Выберите проект для удаления
    • Нажмите Delete (NOT Backspace!)

    FlyByDay 10 дек. 2015, в 12:24
    Поделиться
    Вот как найти путь к каталогу проекта в Linux: stackoverflow.com/a/17947360/2535335
    Johannes Jander 10 дек. 2015, в 10:41

    Найденный в другом месте в Интернете, он удаляет в основном все (кроме файла workspace.xml, который вы можете удалить вручную из папки проекта).

    • Щелкните правой кнопкой мыши по имени проекта под значком сохранения.
    • Нажмите «Удалить»
    • Перейдите в папку проекта и убедитесь, что все файлы были удалены.

    Изображение 114055

    gib 20 сен. 2015, в 13:01
    Поделиться

    Или, если вы не хотите его создавать, просто удалите его из settings.gradle файла

    Dino Velić 19 сен. 2017, в 13:24
    Поделиться

    Выберите проект в окне проектов > Файл > Структура проектa > (в разделе «Модули» ) выберите проект и нажмите кнопку «минус».

    Bobby 10 фев. 2017, в 00:44
    Поделиться
    это должен быть правильный ответ
    Mr Heelis 08 март 2019, в 14:40

    СДЕЛАЙТЕ ЭТО ПРОСТОЕ

    • Открыть проект
    • Перейдите в папку AndroidStudioProjects
    • Щелкните правой кнопкой мыши имя проекта, чтобы удалить
    • нажмите «Удалить»

    Изображение 114056

    Latief Anwar 10 окт. 2016, в 10:53
    Поделиться

    Самый простой способ сделать это — закрыть проект. Используя проводник файлового архива, удалите его и удалите.

    Многие процессы, даже простое удаление, могут раздражать, чтобы разобраться в студии. Большинство удаляющих параметров позволяют работать с файловым проводником. Это часть процесса, который также работает для удаления модулей. Который u будет prob найти также больно

    Ss.wa 26 авг. 2015, в 22:50
    Поделиться

    Если вы пытаетесь удалить/вырезать, как предложила @Pacific P. Regmi, и если вы получаете «Папка в использовании», которая не позволит вам удалить/вырезать, обязательно закройте все экземпляры студии Android.

    SajithK 13 авг. 2015, в 09:42
    Поделиться

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

    После этого я закрыл затмение. Открыла студию Android и попыталась открыть мой импортированный проект. На данный момент он сказал мне, что проект не существует и предоставил мне возможность удалить его из списка. После этого я закрыл Android Studio, и когда я снова открыл его, проект исчез.

    Наконец, я заново затмил eclipse и импортировал мой проект из существующих источников, чтобы вернуть его обратно в eclipse.

    ПРИМЕЧАНИЕ

    Я бы посоветовал использовать Android Studio для проектов, которые у вас есть, которые отлично работают с eclipse. Студия Android прекрасна, когда вы создаете новые проекты, но из моего опыта есть много проблем со строками сборки, когда я импортирую build.gradle из eclipse в Android Studio. Android Studio замечательно, но помните, что он все еще находится в предварительном выпуске ввода-вывода.

    Я устал вручную удалять мобильное приложение с устройства и написал расширение для VS Code

    Каждый мобильный разработчик рано или поздно сталкивается с тем, что его начинают утомлять некоторые рутинные операции. Скажем, дебажишь авторизацию в приложении. Или проверяешь перехват UTM-метки при первой установке. Или пытаешься понять, работает ли корректно очередная миграция БД. Или попадаешь в еще миллион ситуаций, когда тебе нужно по много раз елозить иконкой приложения по экрану смартфона (или курсором по эмулятору), чтобы его удалить и установить начисто.

    Когда я работал над нативными Android-приложениями, меня спасал плагин для Android Studio ADB Idea. Очень удобно через шорткат можно было вызвать окошко с основными ADB командами по типу «Удалить приложение», «Принудительно завершить приложение», «Перезапустить приложение» и т.п.

    Команды ADB Idea

    Очень я привязался к этому плагину. И когда жизнь занесла меня в кроссплатформенную мобильную разработку, а конкретно Flutter, я был неприятно удивлен, что даже в Android Studio в Flutter-проектах ADB Idea не работает. Впрочем, глянув мельком на его код, я понял, что там всё довольно сильно завязано на разные API, которые вне нативного проекта в плагине нельзя использовать.

    А через некоторое время я вообще переехал на VS Code. Причин было несколько — от более стабильной работы на маке с Apple Silicon до лучшей автономности ноутбука. К своему сожалению, здесь плагина с похожим функционалом найти не удалось.

    «Кто, если не мы», — подумал я и пошел изучать API расширений VS Code. Оно оказалось довольно простым. Это радовало, так как подсознательно я решил, что надо максимум за день сделать работающий proof-of-concept. Просто на больше моего энтузиазма может не хватить. Забегая наперед, с первой рабочей версией я в эти временные рамки вложился.

    Сходу демонстрация, что в результате получилось:

    В целом, от API расширений мне надо было не так много вещей, я просто хотел выполнять несколько терминальных ADB-команд из кода, добавиться в Command Palette и показывать всплывающие уведомления, поля ввода да селекторы со списком вариантов. Ну, еще что-то вроде key-value storage для хранения package name приложение, да доступ к файлам открытого проекта, чтобы этот самый package name попытаться вытащить из build.gradle .

    VS Code — это Electron-приложение, так что ожидаемо расширения для него пишутся на JavaScript и TypeScript. С первым у меня есть полгода опыта, когда я писал React Native приложение, так что решил поиграться с TypeScript, ведь проверка типов — наше всё.

    Благо, VS Code — это не браузер, и запуск терминальных команд в нем довольно прост:

    import < exec, ExecOptions >from 'child_process'; const executeCommand = async (cmd: string, options: ExecOptions | null = null) => < return new Promise((resolve, reject) => < exec(cmd, options, (err, stdout) => < if (err) < reject(err); >else < resolve(stdout); >>); >); >;

    Осталось только разобраться, какие собственно команды следует таким образом выполнять. С adb uninstall com.package.name все понятно, но раз уж затевать разработку плагина, то, наверное, не ради единственной команды. Стоит хотя бы повторить и другие из ADB Idea.

    Принудительное закрытие приложение через adb shell am force-stop и очистка данных приложения с помощью adb shell pm clear тоже довольно прозрачны. Вот с запуском приложения пришлось немного погуглить, оказалось, это можно провернуть с помощью утилиты monkey , идущей вместе с Android SDK (штука для стресс-теста приложения кучей тапов в рандомных местах): adb shell monkey -p com.package.name -c android.intent.category.LAUNCHER 1 . Здесь запускается как бы один тап, который всегда делается по ярлыку приложения.

    Прикрутив эти команды и их комбинации к плагину, у меня получились следующие команды, которые можно запускать с Command Palette VS Code (Cmd/Ctrl+Shift+P):

    Ну, еще с «Revoke Permissions» пришлось поиграться. Отобрать пермишен можно с помощью комманды adb shell pm revoke com.package.name android.permission.PERMISSION_NAME , а вот чтобы понять, какие пермишены можно отбирать, пришлось немного попарсить вывод команды adb shell dumpsys package com.package.name . Он выглядит как огромная простыня текста, в которой встречаются вот такие строки:

    То есть, строка с названием пермишена, после которого указано granted=true .

    Быстренько накидал выковыривание этого списка:

     let grantedPermissions = dumpsysOutput .split('\n') .filter((line) => line.indexOf('permission') >= 0 && line.indexOf('granted=true') >= 0) .map((line) => line.split(':')[0].trim());

    Не гарантирую, что это оптимальный способ распарсить эти данные, но он работает. Наверное, еще бы хорошо брать только раздел runtime permissions: , но пока просто игнорирую неудачную попытку отобрать пермишен. Скорее всего, это будет означать, что он не runtime.

    Следующая задача — понять, Package Name какого приложения использовать в ADB-командах. Изначально я добавил возможность указать имя пакета вручную, показывая пользователю инпут, валидируя ввод и складывая его в ExtensionContext.workspaceState , но хотелось бы как-то упросить эту ситуацию и получать applicationId из Gradle автоматически (только сейчас понял, что можно еще пробовать искать package в AndroidManifest, хотя сейчас его указание там вручную необязательно). В Gradle можно наворотить что угодно, связанное с генерацией applicationId , однако в кросс-платформенных проектах этим не особо заморачиваются, так что в большинстве случаев проблем быть не должно. Пока реализован парсинг самой простой ситуации — когда только выполнил flutter create myapp и больше ничего в Gradle не трогал. То же самое будет работать и для React Native, во всяком случае без Expo. Сработает, и если открыть в VS Code сам Android проект, но вряд ли это кому-то нужно.

    const POSSIBLE_BUILD_GRADLE_FILES = [ 'app/build.gradle', 'android/app/build.gradle', ]; const findProjectAndroidApplicationId = async (workspaceFolders: Array): Promise => < let foldersToCheck = workspaceFolders.filter((uri) =>uri.scheme === 'file'); const readFile = promisify(fs.readFile); for (let folder of foldersToCheck) < for (let possibleFile of POSSIBLE_BUILD_GRADLE_FILES) < let possiblePath = path.join(folder.fsPath, possibleFile); try < let openedFile = await readFile(possiblePath, < encoding: 'utf8' >); let possibleLines = openedFile.split('\n') .filter((line) => line.indexOf('applicationId ') >= 0) .map((line) => < const appIdMatch = line.match(VALID_APPLICATION_ID_MATCHER); if (appIdMatch === null || appIdMatch.length === 0) < return ''; >return appIdMatch[0]; >) .filter((appId) => appId.length > 0); if (possibleLines.length > 0) < return possibleLines[0]; >; > catch (err) < console.log(`Cannot open file $, will not get application id from it: $`); continue; > > > return ''; >;

    Грубо говоря, ищу в файлах build.gradle что-то похожее на имя пакета в одной строке с вызовом applicationId , и возвращаю первое попавшееся. Внезапно, для всех моих проектов это сработало и вытащить правильный package name там удалось (но если у вас есть идея получше, милости прошу в PR на Github). Для ситуаций, когда все же не удалось таким образом найти package name, показываю инпут для ввода и сохраняю его на будущее.

    В общем, за несколько небольших сессий в течение дня получилось собрать что-то рабочее. Правда, потом я понял, что устройств же может быть подключено несколько, и тогда в adb надо передавать флаг -s с идентификатором устройства. Тут тоже пришлось парсить вывод команды adb devices .

    private chooseDeviceToRunCommandOn = async (): Promise => < let activeDevices = (await executeCommand('adb devices') as string) .split('\n') .filter((_, index) =>index > 0) .map((line) => line.split('\t')[0].trim()) .filter((line) => line.length > 0); if (activeDevices.length === 0) < return ''; >if (activeDevices.length === 1) < return activeDevices[0]; >let userSelectedDevice = await vscode.window.showQuickPick( activeDevices, < title: 'Choose target device', canPickMany: false, >); return userSelectedDevice ?? ''; >;

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

    Скинул плагин нескольким друзьям, которые работают с Flutter и React Native, на попробовать. Угадайте, каким был первый запрос. «А для iOS то же самое можно?» Естественно, ADB c iOS не работает, пришлось идти в гугл, где обнаружился IDB. Такая себе аллюзия на ADB, но от Facebook и для iOS. adb devices превращается в idb list-targets , adb shell am force-stop в idb terminate . Вместо флага для передачи идентификатора устройства надо предварительно вызывать idb connect . Можно работать.

    Эта штука, конечно, не настолько распространена, но процесс установки довольно прост. Печально только, что для ARM до сих пор надо собирать с исходников, иначе не заведется:

    brew install protobuf brew install grpc git clone git@github.com:facebook/idb.git cd idb pod install ./idb_build.sh idb_companion build /opt/homebrew codesign --force --sign - --timestamp=none /opt/homebrew/Frameworks/FBDeviceControl.framework/Versions/A/Resources/libShimulator.dylib codesign --force --sign - --timestamp=none /opt/homebrew/Frameworks/FBSimulatorControl.framework/Versions/A/Resources/libShimulator.dylib codesign --force --sign - --timestamp=none /opt/homebrew/Frameworks/XCTestBootstrap.framework/Versions/A/Resources/libShimulator.dylib codesign --force --sign - --timestamp=none /opt/homebrew/Frameworks/FBControlCore.framework/Versions/A/Resources/libShimulator.dylib pip3 install fb-idb

    Еще одна проблема с IDB — это невозможность узнать, какой симулятор в данный момент запущен. Команда idb list-targets выдает такой результат:

    Возле всех симуляторов написано «Shutdown», пока на них не будет выполнено idb connect . Благо, хоть реальные устройства сразу получают статус «Booted». Сделал сортировку, чтобы реальные устройства были вверху, чуть ниже симуляторы, которые уже использовались, и ниже все остальные. Это вроде немного уменьшает боль от постоянной необходимости выбора устройства.

    private chooseDeviceToRunCommandOn = async (): Promise => < let devices = (await executeCommand('idb list-targets') as string) .split('\n') .filter((line) =>line.length > 0) .map((line) => < const values = line.split('|').map((value) =>value.trim()); return < uuid: values[1], name: values[0], isBooted: values[2] === 'Booted', isPhysical: values[3] === 'device', osVersion: values[4], >as Device; >).sort((deviceLeft, deviceRight) => < if (deviceLeft.isPhysical && !deviceRight.isPhysical) < return -1; >if (deviceLeft.isBooted && !deviceRight.isBooted) < return -1; >; return deviceLeft.name.localeCompare(deviceRight.name); >); const userSelectedDeviceLabel = await vscode.window.showQuickPick( devices.map((device) => `$ | $ $`), < title: 'Choose target device', canPickMany: false, >); if (!userSelectedDeviceLabel) < return ''; >const userSelectedDeviceName = userSelectedDeviceLabel.substring(0, userSelectedDeviceLabel.indexOf('|')).trim(); const userSelectedDevice = devices.filter((device) => device.name === userSelectedDeviceName)[0]; return userSelectedDevice.uuid; >;

    Понятно, все команды ADB повторить не удалось, но самые нужные, как по мне, присутствуют:

    Да, Bundle ID тоже попробовал поискать в *.xcodeproj . Для простых кейсов вроде работает.

    export const findProjectIOSBundleIdentifier = async (workspaceFolders: Array): Promise => < const readFile = promisify(fs.readFile); const readdir = promisify(fs.readdir); try < let dirsToCheck = workspaceFolders.filter((uri) =>uri.scheme === 'file'); let finalDirs = Array(); for (let dir of dirsToCheck) < finalDirs.push(dir.fsPath); const openedDir = await readdir(dir.fsPath); const iosDir = openedDir.find((folder) =>folder === 'ios'); if (iosDir) < finalDirs.push(path.join(dir.fsPath, iosDir)); >> for (let possibleDir of finalDirs) < try < const dir = await readdir(possibleDir); const xcodeProjects = dir.filter((name) =>name.endsWith('.xcodeproj')); for (let projectPackage of xcodeProjects) < const projectFiles = await readdir(path.join(possibleDir, projectPackage)); const project = projectFiles.find((name) =>name === 'project.pbxproj'); if (!project) < continue; >const openedProject = await readFile(path.join(possibleDir, projectPackage, project), < encoding: 'utf8' >); let possibleIds = openedProject.split('\n') .filter((line) => line.indexOf('PRODUCT_BUNDLE_IDENTIFIER') >= 0) .map((line) => < const appIdMatch = line.match(VALID_APPLICATION_ID_MATCHER); if (appIdMatch === null || appIdMatch.length === 0) < return ''; >return appIdMatch[0]; >); if (possibleIds.length > 0) < return possibleIds[0]; >> > catch (err) < console.log(`Cannot work with directory $, will not get application id from it: $`); continue; > > > catch (err) < console.log(`Cannot get application id: $`); > return ''; >;

    Собственно, пока все. Расширение работает и мои задачи в полной мере решает. Так как оно может решать и чьи-то еще задачи, я его опубликовал:

    Github. Сюда можно ходить с багами и Pull Request-ами.

    В качестве заключения выводы:

    • Писать расширения проще, чем кажется, во всяком случае, для VS Code.
    • Facebook Meta пока разработчикам не выдает маки на Apple Silicon, раз установку IDB за год не починили.
    • TypeScript волне себе неплох, даже немного жаль, что Flutter решил жить с Dart.

    Как удалить проект в android studio

    Теперь создадим первое приложение в среде Android Studio для операционной системы Android. Откроем Android Studio и на начальном экране выберем пункт New Project :

    Первый проект в Android Studio

    При создании проекта Android Studio вначале предложит нам выбрать шаблон проекта:

    Выбор Empty Activity в Android Studio

    Android Studio предоставляет ряд шаблонов для различных ситуаций. Для создания приложения на Java выберем в этом списке шаблон Empty Views Activity , который предосавляет самый простейший фукционал, необходимый для начала, и нажмем на кнопку Next .

    После этого отобразится окно настроек нового проекта:

    Настройка проекта в Android Studio

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

    • В поле Name вводится название приложения. Укажем в качестве имени название HelloApp
    • В поле Package Name указывается имя пакета, где будет размещаться главный класс приложения. В данном случае для тестовых проектов это значение не играет ольшого значения, поэтому установим com.example.helloapp .
    • В поле Save Location установливается расположение файлов проекта на жестком диске. Можно оставить значение по умолчанию.
    • В поле Language в качестве языка программирования укажем Java (будьт внимательны, так как по умолчанию в этом поле стоит Kotlin)
    • В поле Minimum SDK указывается самая минимальная поддерживаемая версия SDK. Оставим значение по умолчанию. Минимальная версия означает, что наше приложение можно будет запустить начиная с этой версии. На более старых устройствах запустить будет нельзя. Стоит учитывать, что чем выше версия SDK, тем меньше диапазон поддерживаемых устройств.

    Далее нажмем на кнопку Finish, и Android Studio создаст новый проект:

    Новый проект в Android Studio

    Вначале вкратце рассмотрим структуру проекта, что он уже имеет по умолчанию

    Структура проекта в Android Studio

    Проект Android может состоять из различных модулей. По умолчанию, когда мы создаем проект, создается один модуль — app . Модуль имеет три подпапки:

    • manifests : хранит файл манифеста AndroidManifest.xml , который описывает конфигурацию приложения и определяет каждый из компонентов данного приложения.
    • java : хранит файлы кода на языке java, которые структурированы по отдельным пакетам. Так, в папке com.example.helloapp (название которого было указано на этапе создания проекта) имеется по умолчанию файл MainActivity.java с кодом на языке Java, который представляет класс MainActivity, запускаемый по умолчанию при старте приложения
    • res : содержит используемые в приложении ресурсы. Все ресурсы разбиты на подпапки.
      • папка drawable предназначена для хранения изображений, используемых в приложении
      • папка layout предназначена для хранения файлов, определяющих графический интерфейс. По умолчанию здесь есть файл activity_main.xml , который определяет интерфейс для класса MainActivity в виде xml
      • папки mipmap содержат файлы изображений, которые предназначены для создания иконки приложения при различных разрешениях экрана.
      • папка values хранит различные xml-файлы, содержащие коллекции ресурсов — различных данных, которые применяются в приложении. По умолчанию здесь есть два файла и одна папка:
        • файл colors.xml хранит описание цветов, используемых в приложении
        • файл strings.xml содержит строковые ресурсы, используемые в приложении
        • папки themes хранит две темы приложения — для светлую (дневную) и темную (ночную)

        Отдельный элемент Gradle Scripts содержит ряд скриптов, которые используются при построении приложения.

        Во всей этой структуре следует выделить файл MainActivity.java, который открыт в Android Studio и который содержит логику приложения и собственно с него начинается выполнение приложения. И также выделим файл activity_main.xml , который определяет графический интерфейс — по сути то, что увидит пользователь на своем смартфоне после загрузки приложения.

        Запуск проекта

        Созданный выше проект уже содержит некоторый примитивный функционал. Правда, этот функционал почти ничего не делает, только выводит на экран строку «Hello world!». Тем не менее это уже фактически приложение, которое мы можем запустить.

        Для запуска и тестирования приложения мы можем использовать эмуляторы или реальные устройства. Но в идеале лучше тестировать на реальных устройствах. К тому же эмуляторы требуют больших аппаратных ресурсов, и не каждый компьютер может потянуть требования эмуляторов. А для использования мобильного устройства для тестирования может потребоваться разве что установить необходимый драйвер.

        Режим разработчика на телефоне

        По умолчанию опции разработчика на смартфонах скрыты. Чтобы сделать их доступными, надо зайти в Settings > About phone (Настройки > О телефоне) (в Android 8 это в Settings > System > About phone (Настройки > Система > О телефоне) ) и семь раз нажать Build Number (Номер сборки) .

        Включение параметров разработчика на Android

        Теперь необходимо включить отладку по USB. Для этого перейдем в Settings > System > Advanced > Developer options или Настройки > Система > Дополнительно > Для разработчиков (в Android 8 это в Settings > System > Developer options или Настройки > Система > Для разработчиков ).

        Параметры разработчика на Android

        И включим возможность отладки по USB:

        Отладка по USB на Android

        Запуск приложения

        Подключим устройство с ОС Android (если мы тестируем на реальном устройстве) и запустим проект, нажав на зеленую стрелочку на панели инструментов.

        Запуск приложения в Android Studio

        Выберем устройство и нажмем на кнопку OK. И после запуска мы увидим наше приложение на экране устройства:

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *