- Android с нуля: как хранить данные приложения локально
- 1. Хранение пар ключ-значение
- 2. Использование базы данных SQLite
- 3. Использование внутреннего хранилища
- 4 . Использование внешнего хранилища
- Заключение
- Andriod Studio Tips — список типичных действий или секреты эффективной работы
- Настройки IDE, поиск, быстрые перемещения, действия и др.
- Документация и Помощь | Documentation & Help
- Редактор кода | Editor
- Автозавершение кода | Code completion
- Работа с файлами *.properties
- Рефакторинг
- ОТЛАДЧИК
- КОНТРОЛЬ ВЕРСИЙ | Version Control
- SCRATCH FILES
Android с нуля: как хранить данные приложения локально
Russian (Pусский) translation by Ellen Nelson (you can also view the original English article)
Когда доходит до сохранения данных приложений локально, разработчики Android определённо избалованы выбором. Помимо прямого доступа к внутренним и внешним областям хранения Android-устройства, платформа Android предлагает базы данных SQLite для хранения реляционных данных и специальные файлы для хранения пар ключ-значение. Более того, приложения для Android также могут использовать сторонние базы данных, которые предлагают поддержку NoSQL.
В этом уроке я покажу вам, как использовать все эти параметры хранения в приложениях для Android. Я также помогу вам понять, как выбрать наиболее подходящий вариант хранения данных.
Вам проще учиться по видео? Почему бы не посмотреть наш курс:
1. Хранение пар ключ-значение
Если вы ищете быстрый способ хранения нескольких строк или номеров, вам следует рассмотреть возможность использования файла настроек (preferences). Активити и службы Android могут использовать метод getDefaultSharedPreferences() класса PreferenceManager , чтобы ссылаться на объект SharedPreferences , который может быть использован и для чтения, и для записи в файл настроек по умолчанию.
Чтобы начать запись в файл настроек, вы должны вызвать метод edit() объекта SharedPreferences , который возвращает объект SharedPreferences.Editor .
Объект SharedPreferences.Editor имеет несколько интуитивных методов, которые можно использовать для хранения новых пар ключ-значение в файле настроек. Например, вы можете использовать метод putString() , чтобы поместить пару ключ-значение со значением типа String . Аналогично, вы можете использовать метод putFloat() , чтобы поместить пару ключ-значение, чьё значение типа float . Следующий пример кода создаёт три пары ключ-значение:
После того, как вы добавили все пары, вы должны вызвать метод commit() объекта SharedPreferences.Editor , чтобы сохранить их.
Чтение из объекта SharedPreferences гораздо проще. Всё, что вам нужно сделать, так это вызвать соответствующий метод get*() . Например, чтобы получить пару ключ-значение, чьё значение является String , вы должны вызывать метод getString() . Вот фрагмент кода, который извлекает все значения, которые мы добавили ранее:
Как вы видите из кода выше, второй параметр всех методов get*() ожидает значение по-умолчанию, которое является значением, которое должно быть возвращено, если ключ не существует и файле настроек.
Обратите внимание, что файлы настроек ограничены только строками и примитивными типами данных. Если вы хотите сохранить более сложные типы данных или двоичные данные, вы должны выбрать другой вариант хранения.
2. Использование базы данных SQLite
Каждое приложение для Android может создавать и использовать базы данных SQLite для хранения больших объемов структурированных данных. Как вы уже знаете, SQLite не только лёгкая, но и очень быстрая. Если у вас есть опыт работы с системами управления реляционными базами данных и вы знакомы как с SQL, что является сокращением для Structured Query Language, и JDBC, что является сокращением для Java Database Connectivity, это может быть предпочтительным вариантом хранения.
Чтобы создать новую базу данных SQLite или открыть уже существующую, вы можете использовать метод openOrCreateDatabase() внутри своей активити или службы. В качестве аргументов вы должны передать имя своей базы данных и режим, в котором вы хотите её открыть. Наиболее часто используемый режим MODE_PRIVATE , который гарантирует, что база данных доступна только для вашего приложения. Например, вот как вы можете открыть или создать базу данных с именем my.db:
После создания базы данных вы можете использовать метод execSQL() для запуска SQL-инструкций. В следующем коде показано, как использовать оператор SQL CREATE TABLE для создания таблицы названной user, которая имеет три столбца:
Хотя можно вставить новые строки в таблицу с помощью метода execSQL() , лучше использовать метод insert() . Метод insert() ожидает объект ContentValues , содержащий значения для каждого столбца таблицы. Объект ContentValues очень похож на объект Map и содержит пары ключ-значение.
Вот два объекта ContentValues , которые вы можете использовать с таблицей user :
Как вы могли догадаться, ключи, которые вы передаете методу put() , должны соответствовать именам столбцов в таблице.
Когда объекты ContentValues готовы, вы можете передать их методу insert() вместе с именем таблицы.
Чтобы отправить запрос в базу данных, вы можете использовать метод rawQuery() , который возвращает объект Cursor , содержащий результаты запроса.
Объект Cursor может содержать ноль или несколько строк. Самый простой способ перебрать все его строки, так это вызвать метод moveToNext() внутри цикла while .
Чтобы получить значение отдельного столбца, вы должны использовать такие методы, как getString() и getInt() , которые ожидают индекс столбца. Например, вот как вы получите все значения, вставленные в таблице user :
После того, как вы получите все результаты вашего запроса, убедитесь, что вы вызвали метод close() для объекта Cursor , чтобы освободить все ресурсы, которые он хранит.
Аналогичным образом, когда вы закончили все операции с базой данных, не забудьте вызвать метод close() для объекта SQLiteDatabase .
3. Использование внутреннего хранилища
Каждое приложение Android имеет свой собственный внутренний каталог хранения, взаимодействующий с ним, в котором приложение может хранить текстовые и двоичные файлы. Файлы внутри этого каталога недоступны для пользователя или других приложений, установленных на устройстве пользователя. Они также автоматически удаляются, когда пользователь удаляет приложение.
Прежде чем вы сможете использовать внутренний каталог хранилища, вы должны определить его местоположение. Для этого вы можете вызвать метод getFilesDir() , который доступен как для активити, так и для служб.
Чтобы получить ссылку на файл внутри каталога, вы можете передать имя файла вместе с указанным вами расположением. Например, вот как вы получите ссылку на файл alice.csv:
С этого момента вы можете использовать свои знания о классах и методах I/O (ввода/вывода) Java для чтения или записи в файл. В следующем фрагменте кода показано, как использовать объект FileOutputStream и метод write() для записи в файл:
4 . Использование внешнего хранилища
Поскольку внутреннее хранилище устройств Android обычно фиксировано и часто довольно ограничено, некоторые устройства Android поддерживают внешние носители данных, такие как съемные микро SD-карты. Я рекомендую использовать этот вариант хранения для больших файлов, таких как фотографии и видео.
В отличие от внутреннего хранилища, внешнее хранилище может не всегда быть доступно. Поэтому, перед его использованием, вы должны всегда проверять, смонтировано ли оно. Для этого используйте метод getExternalStorageState() класса Environment .
Как только вы убедитесь, что внешнее хранилище доступно, вы можете получить путь к файлу внешнего хранилища для своего приложения, вызвав метод getExternalFilesDir() и передав null в качестве аргумента. Затем вы можете использовать путь для ссылки на файлы внутри каталога. Например, вот как вы можете ссылаться на файл с именем bob.jpg в каталоге внешнего хранилища приложения:
Попросив пользователя предоставить вам разрешение WRITE_EXTERNAL_STORAGE , вы можете получить доступ для чтения/записи ко всей файловой системе во внешнем хранилище. Затем вы можете использовать известные общедоступные каталоги для хранения ваших фотографий, фильмов и других мультимедийных файлов. Класс Environment предлагает метод getExternalStoragePublicDirectory() для определения путей этих общих каталогов.
Например, передав этому методу значение Environment.DIRECTORY_PICTURES , вы можете определить путь к общедоступному каталогу, в котором вы можете хранить фотографии. Аналогично, если вы передадите этому методу значение Environment.DIRECTORY_MOVIES , вы получите путь к общедоступному каталогу, в котором могут быть сохранены фильмы.
Вот как вы можете ссылаться на файл bob.jpg в каталоге общих изображений:
Когда у вас есть объект File , вы можете снова использовать классы FileInputStream и FileOutputStream для чтения или записи на него.
Заключение
Теперь вы знаете, как максимально использовать возможности локального хранилища, предоставляемые Android SDK. Независимо от выбранного вами варианта хранения операции чтения/записи могут потребовать много времени, если задействованы большие объемы данных. Поэтому, чтобы убедиться, что основной поток пользовательского интерфейса всегда остается отзывчивым, вы должны рассмотреть возможность запуска операций в другом потоке.
Чтобы узнать больше о сохранении данных приложения локально, обратитесь к официальному руководству API хранения данных.
Источник
Andriod Studio Tips — список типичных действий или секреты эффективной работы
Попытался отобрать советы из Android Studio Tips, перевести их, плюс что-то добавил из других источников и собрал все в одном месте. Вот что получилось!
Ссылки на дополнительную информацию:
Интегрированная среда разработки (англ. IDE — Integrated Development Environment) Android Studio после установки всегда предлагает свою помощь:
«Вы можете быстро познакомиться с возможностями IDE с помощью этих записей (англ. tips and tricks — советы и приемы). Попробовать возможности можно не закрывая этот диалог. Если Вы закрыли диалог, открыть его можно из меню Help | Tip of the day.»
Настройки IDE, поиск, быстрые перемещения, действия и др.
English | Русский + картинка (опционально) |
---|---|
Первоначально на главном экране Android Studio не отображается ни один проект или файл. Однако, при создании проекта открывается вид (или представление) Project. Как предлагает Android Studio, нажмите Alt+1, чтобы открыть представление Project. Вы также можете открыть его, нажав кнопку Project с левого края. |
https://www.packtpub.com/mapt/book/application_development/9781783285273.
Also in IDEA 13 there is an awesome «Search Everywhere» option, by default called by double Shift. It allows you to search in project, files, classes, settings, and so on. Also you can search from Project Structure dialog with «Find in Path…». Just call it by right mouse button on concrete directory and the search will be scoped, only inside that directory and it’s sub-directory.
Each antivirus check in your project consumes resources. You can significantly improve the performance, if you exclude certain folders from the antivirus protection.
Каждая проверка антивируса в вашем проекте потребляет ресурсы. Вы можете значительно повысить производительность, если исключить определенные папки из антивирусной защиты.
Click color icons to choose the desired color from the color picker.
Нажмите значки цветов, чтобы выбрать нужный цвет из панели выбора цвета.
Вот как получилось у меня:.
через меню File->Settings->Appearance&Behivior->System Settings->File Colors
In the Project tool window, select the file you want to ignore, and choose Mark as plain text in its context menu.
If necessary, you can always return the file to its original type using the Mark as context menu command.
В окне инструмента Project выберите файл, который вы хотите игнорировать, и выберите Mark as plain text в его контекстном меню.
При необходимости вы всегда можете вернуть файл в исходный тип, используя команду контекстного меню Mark as (file type)
Use the Scope-Based tab in the TODO tool window to show only those items that pertain to the scope of interest.
Используйте вкладку Scope-Based в окне инструмента TODO, чтобы отображать только те элементы, которые интересуют.
Документация и Помощь | Documentation & Help
English | Русский + картинка (опционально) |
---|---|
To quickly see the documentation for a class or method at caret, press Ctrl+Q (View | Quick Documentation). | Для того чтобы посмотреть документацию для класа или метода находящегося под курсором нажмите Ctrl+Q (View | Quick Documentation). |
You can quickly navigate in the currently edited file with Ctrl+F12 (Navigate | File Structure). It shows the list of members of the current class. Select an element you want to navigate to and press the Enter key or the F4 key. To easily locate an item in the list, just start typing its name | Вы можете быстро перемещаться в текущем файле, открытом в редакторе с помощью Ctrl+F12 (Navigate | File Structure). Это показывает список членов этого класса. Выберите элемент и нажмите клавишу Enter или F4. Здесь также можно ускорить перемещение, начав набирать нужное имя. |
When choosing a live template from a suggestion list, press Ctrl+Q to view quick documentation — to be sure you make a right choice. When in a Code Completion lookup, press Ctrl+Q to show documentation for a lookup item, including class constructors. | Выбирая нужный шаблон из списка предложений а также при автозаполнении в редакторе, например для выбора конструктора, нажмите Ctrl+Q, чтобы просмотреть быструю документацию и убедиться, что вы сделали правильный выбор. |
To enable this feature, select the check box Show quick doc on mouse move in the editor settings.
Редактор кода | Editor
English | Русский + картинка (опционально) |
---|---|
Use the Switcher (Ctrl+Tab) to switch between open files and tool windows. Keeping Ctrl pressed, use the Up and Down arrow keys, Tab or Shift+Tab, Alt for navigation; use Delete or BackSpace to close editor tab or hide a tool window. | Используйте переключатель (Ctrl+Tab) для переключения между открытыми файлами и окнами инструментов. Удерживая нажатой клавишу Ctrl, используйте клавиши со стрелками вверх и вниз, Tab или Shift+Tab, Alt для навигации; используйте Delete или BackSpace, чтобы закрыть вкладку редактора или скрыть окно инструмента. |
First, right-click the editor tab, and choose Close Others on the context menu.
Second, keeping the Alt key pressed, click ‘X’ on the editor tab.
Первый — щелкните правой кнопкой мыши вкладку редактора и выберите Close Others в контекстном меню.
Во-вторых, удерживая нажатой клавишу Alt, нажмите «X» на вкладке редактора.
Use Ctrl+Alt+Up/Ctrl+Alt+Down shortcuts to jump between compiler error messages or search operation results.
To skip warnings right click on the validation side bar / marker bar and choose Go to high priority problems only.
Чтобы пропустить предупреждения — нажмите правой кнопкой мыши на side bar / marker bar (панель боковой проверки) и выберите Go to high priority problems only.
The selected file will open with the caret at the specified line.
В качестве разделителя используйте либо косую черту, либо обратную косую черту.
All texts, including comments, textual strings and literals, are inspected against the pre-defined dictionaries. All typos are highlighted, which leaves you with the task of choosing the correct word, accepting the current spelling, or disabling inspection.
Use Alt+Enter to see the list of available actions.
Все тексты, включая комментарии, текстовые строки и литералы, проверяются по заранее определенным словарям. Все опечатки подсвечиваются, вам остается выбрать правильное слово, принять текущее правописание или отключить проверку.
Используйте Alt+Enter, чтобы просмотреть список доступных действий.
All you have to do is to point to the directories where your dictionaries are stored, in the Spelling of the Settings dialog.
Все, что вам нужно сделать, это указать каталоги, где ваши словари хранятся в меню Spelling диалога Settings
Помимо недавних файлов, вы можете просмотреть результаты поиска, которые вы недавно выполняли. Для этого используйте тот же самый ярлык Ctrl+E с инструментом «Найти» в фокусе, и выберите нужный результат из всплывающего окна «Recent Find Usages».
Choose symbol from the drop-down list that appears.
Выберите нужное из раскрывающегося списка
For example, go to the java.util.Collections JDK class, place the cursor within the EMPTY-MAP field and press Ctrl+Alt+Shift+C:
Then return to your source code and press Ctrl+V:
затем перейдите в свой исходный код и нажмите Ctrl+V:
Select a code fragment and press Ctrl+Shift+Up or Ctrl+Shift+Down.
The following pictures show an initial location of a code fragment, and the results of moving the selected fragment up and down.
Когда в редакторе ничего не выделено, строка под курсором будет перемещена.
When you perform search and replace in a file, pressing Ctrl+F shows the search pane. Pressing Ctrl+R adds field, where you can type the replace string.
While in the Find in Path dialog, you can switch to replace by pressing Ctrl+Shift+R. Same way, press Ctrl+Shift+F to hide the Replace with field, and switch to mere search.
В диалоговом окне «Find in Path» вы можете переключиться на замену, нажав Ctrl+Shift+R. То же самое, нажмите Ctrl+Shift+F, чтобы скрыть поле «Заменить», и переключитесь на простой поиск
There are two ways of closing all tabs in the editor, except the current one:
First, right-click the editor tab, and choose Close Others on the context menu.
Second, keeping the Alt key pressed, click on the editor tab.
You can also use Basic Completion (Ctrl+Space) in HTML, CSS and JavaScript files, for completing attributes, parameters, tags, selectors, etc.
You can easily select multiple fragments of text. To do that, it’s enough to keep Alt+Shift and drag your mouse cursor:
Make your printouts (File | Print) nice and informative with the help of keywords.
For example, use $DATE$ and $TIME$ to specify the exact date and time of the printout.
Автозавершение кода | Code completion
English | Русский + Картинка (опционально) |
---|---|
Use Basic Completion (Ctrl+Space) for completing words in text and comments in files of many different types. All the words from the current file that start with the typed prefix will appear in the lookup list. | Используйте автозавершение (Ctrl+Space) для завершения слов в тексте или комментарии в файлах различных типов. Все слова из текущего файла будут использованы в списке автозаполнения при написании начальных символов. |
и нажмите Ctrl+Shift+Space:
Завершение кода SmartType также работает после ключевого слова return, в присваивании, в списке аргументов при вызове метода и других местах.
and press Ctrl+Shift+Space:
и нажмите Ctrl+Shift+Space:
String s = (|caret is here|
and press Ctrl+Shift+Space to see what happens.
String s = (|курсор здесь|
нажмите Ctrl+Shift+Space и посмотрите что произойдет
You can customize name prefixes for local variables, parameters, instance and static fields in File | Settings | Code Style.
и нажмите Ctrl+Space. Вы можете сами настроить префиксы для имен локальных переменных, параметров, экземпляров и статических полей в File | Settings | Code Style
Live Templates allow you to generate many typical code constructs in seconds! For example, type
String[] array1, array2;
itar
in a method and press the Tab key to see what happens.
Use the Tab key to move between the template fields. See File | Settings | Live Templates for more details.
в методе и нажмите клавишу Tab чтобы посмотреть что получится.
используйте клавишу Tab для перемещения между полями. Посмотрите File | Settings | Live Templates для дополнительной инфрмации.
The selected name is automatically entered in the editor followed by the entered character.
Выбранное имя автоматически вводится в редакторе следом за введенными символами.
* stands for any symbol.
Space at the end means the end of a pattern, and the preceding string will be considered not just a prefix but a whole pattern. The list of the suggested names will be reduced accordingly.
Depending on the context, you can choose to disable inspection, fix all problems, change inspection profile, etc.
To quickly complete a method call of a static method located anywhere in your project, libraries or JDK, enter a prefix and press Ctrl+Space twice. You’ll see all the matching methods. If you want the method you chose to be imported statically, press Alt+Enter and see what happens:
When an autopopup completion is active, Ctrl+Down and Ctrl+Up will close it and move the caret down or up in the editor. /Когда работает автодополнение Ctrl+Down и Ctrl+Up переводят курсор в редактор вниз или вверх/
When using Code Completion, you can accept the currently highlighted selection in the popup list with the Ctrl+Shift+Enter, Android Studio will not just insert the selected string, but also will do its best to turn current code construct into syntactically correct one (balance parentheses, add missing braces and semicolons, etc.)
When using Code Completion in Java, you can accept the currently highlighted selection in the popup list with the exclamation sign (!) character. It will be inserted before the boolean method or variable you were completing, thus negating the whole expression. /При использовании автозавершения кода в Java, вы можете принять выделенный в данный момент выбор в раскрывающемся списке автозавершения нажав восклицательный знак (!). Он будет вставлен перед булевым выражением или переменной, которую вы заканчивали, отрицая его (ее)./
When you invoked Basic Completion (Ctrl+Space) in Java and didn’t find your desired class in the list, it means that it’s not yet imported in current file. Pressing Ctrl+Space once more to view all accessible classes.
/При вызове стандартного завершения кода (Ctrl + Space) в Java и не нашли нужного класса в списке, это означает, что он еще не импортирован в текущем файле. Нажмите Ctrl + Space еще раз, чтобы просмотреть все доступные классы./
Pressing the same shortcut after you have invoked Smart-type Completion when an array type is expected will search for collections with same component type and suggest to convert them using toArray() call.
/После того, как вы используя Smart-завершение кода, когда, например, ожидается тип массива, Studio будет искать преобразование коллекций этого типа компонентов и предложит, чтобы преобразовать их с помощью вызова ToArray()./
Postfix code completion is applied «from right to left» and lets you avoid backward caret jumps when coding. After the code fragment that you want to change, type a dot (.), optionally press Ctrl+J and select the desired option.
/постфиксный вариант завершения кода применяется «справа-налево» и позволяет избежать скачков курсора при кодировании. после фрагмента кода, который вы хотите изменить, напишите точку (.), нажмите Ctrl+J и выберите нужную опцию./
A special variant of the Code Completion feature invoked by pressing Ctrl+Space twice allows you to complete XML tag names from namespaces not declared in the current file. If the namespace is not declared yet the declaration is generated automatically.
/Специальный вариант функции дополнения кода вызывается нажатием Ctrl + Space дважды Позволяет завершить имена XML-тегов из пространств имен не объявленных в текущем файле. Если пространство имен пока не объявлено оно генерируется автоматически./ см. /media/si/KINGSTON/mywiki/AndroidStudio/xml_code_completion.png
//отл пример преобразвания ArrayList в массив строк
void foo() <
List strings = new ArrayList ();
String[] p = strings.toArray(new String[strings.size[0]);
>
Ctrl+Alt+Left — назад, где стоял курсор
You can create code constructs using statement completion. Start typing a method declaration or a statement, and press Ctrl+Shift+Enter after the opening parenthesis. The braces are created, with the caret placed inside:
To view which line separators style is used in the current file, look at the Status Bar: LF или CR/LF
To change the current line ending style, just click the spinner.
You do not need to open a file in the editor to change its line separator style. Use the Project tool window instead: select one or more files, or folders, point to File | Line Separators on the main menu, and then choose the desired line ending style.
For a directory, new line separator applies recursively.
To create a bookmark with mnemonics
Place the caret at the desired line of code in the editor.
Press Ctrl+F11 (alternatively, choose Navigate | Bookmarks | Toggle Bookmark With Mnemonic on the main menu) , then press one of the keys 0-9 or A-Z.
You want your bookmarks and breakpoints to be always at hand, so that you can easily navigate through them?
They are visible in the Favorites tool window, which you can dock or float as required:
Работа с файлами *.properties
English | Русский + картинка (опционально) |
---|---|
You can use Basic Completion (Ctrl+Space) within Java String literals and in other file types, for completing .properties keys. | Вы можете использовать автодополнение (Ctrl+Space) как для строковых данных Java, так и для других типов файлов, например, ключей .properties. |
All escaped characters in the *.properties files in the format \uXXXX, are displayed in the resource bundle editor as un-escaped unicode literals.
Vice versa, if a non-ASCII character is entered in the resource bundle editor, it is reflected in the underlying *.properties file as a corresponding escaped character in the format \uXXXX.
For example, if the *.properties file contains a property value
Обновление эмулятора в AStudio:
Your emulator is out of date, please update by launching Android Studio:
— Start Android Studio
— Select menu «Tools > Android > SDK Manager»
— Click «SDK Tools» tab
— Check «Android SDK Tools» checkbox
— Click «OK»
Рефакторинг
English | Русский + картинка (опционально) |
---|---|
You can easily rename your classes, methods and variables with automatic correction of all places where they are used. To try it, place the caret at the symbol you want to rename, and press Shift+F6 (Refactor | Rename). Type the new name in the popup window that appears, or select one of the suggested names, and press Enter. | Вы можете легко переименовать свои классы, методы и переменные с автоматической коррекцией имен во всех местах, где они используются. Чтобы попробовать это, поместите курсор внутри имени, которое вы хотите изменить, и нажмите Shift+F6 (Refactor | Rename). Введите новое имя в появившемся всплывающем окне или выберите одно из предлагаемых имен и нажмите Enter. |
When you invoke the Move refactoring (F6) on an inner class that is declared static, you are provided with an option to either make it a top-level class, or move it to another class. | Когда Вы используете рефакторинг для перемещения (F6) во внутреннем классе, который объявлен статическим, Вам предоставляется возможность либо сделать его классом более высокого уровня, либо перенести его в другой класс. |
The Extract Variable refactoring helps you simplify complicated statements in your code. For example, in the code fragment below, you can select an expression in the code and press Ctrl+Alt+V (Refactor | Extract | Variable. ). This will result in the following: | Рефакторинг типа Extract Variable (Извлечь переменную) помогает упростить сложные конструкции в коде. Например во фрагменте кода, показанном ниже, Вы можете выделить выражение в коде и нажать Ctrl+Alt+V (Refactor | Extract | Variable. ). Результат показан ниже: |
You can use the Extract Variable refactoring even on incomplete statements. Just press Ctrl+Alt+V, and choose the desired expression: | Вы можете использовать рефакторинг Extract Variable (Извлечь переменную) даже в незаконченном выражении. Просто нажмите Ctrl+Alt+V и выберите нужное выражение. |
Use Refactor | Copy to create a class which is a copy of the selected class. This can be useful, for example, when you need to create a class which has much in common with some existing class and it’s not feasible to put the shared functionality in a common superclass. | Используйте Refactor | Copy, чтобы создать класс, который является копией выбранного класса. Это может быть полезно, например, когда вам нужно создать класс, который имеет много общего с некоторым существующим классом, и не представляется возможным поместить общую функциональность в суперкласс. |
If you place the caret at certain symbol and press Ctrl+Alt+Shift+T, you will see the list of refactorings applicable to the current context. | Если поместить курсор в некоторую область и нажать Ctrl+Alt+Shift+T, можно увидеть список возможных улучшений кода в текущем контексте |
ОТЛАДЧИК
English | Русский + картинка (опционально) |
---|---|
By pressing Alt+Shift+F10 you can access the Run/Debug dropdown on the main toolbar, without the need to use your mouse. | Нажатием Alt+Shift+F10 можно папасть в элемент управления Run/Debug расположенный в панели инструментов без использования мыши. |
Right-clicking on a breakpoint marker (on the bar to the left from the text) invokes the speedmenu where you can quickly enable/disable the breakpoint or adjust its properties. | Нажатие правой кнопки мыши на маркере точки останова (находится слева от текста в редакторе) вызывает меню, которое позволит разрешить/запретить точку останова или настроить ее свойства |
In Android Studio 2.3 and higher, Instant Run significantly reduces the time it takes to update your app with code and resource changes. After deploying your app to a target device running Android 5.0 (API level 21) or higher, you can click Apply Changes to push certain code and resource changes to your running app without building a new APK—and, in some cases, without even restarting the current activity. The Run and Debug buttons are always available to you when you want to push your changes and force an app restart. However, you may find that using the Apply Changes button provides a faster workflow for most incremental changes to your app. You can also press Control + F10 (or Control + Command + R on Mac) to apply changes with Instant Run. https://developer.android.com/studio/run/index.html#instant-run%22 | В Android Studio 2.3 и более поздних версиях Instant Run значительно сокращает время, необходимое для обновления приложения при изменении кода и ресурсов. После развертывания приложения на целевом устройстве под управлением Android 5.0 (уровень API 21) или более поздней версии нажмите Apply Changes / «Применить изменения», чтобы направить определенные изменения кода и ресурсов в запущенное приложение без создания нового APK, а в некоторых случаях без перезагрузки текущей активности. Кнопки «Выполнить» и «Отладка» всегда доступны для вас, когда вы хотите применить ваши изменения и принудительно перезапускать приложение. Однако вы можете обнаружить, что кнопка «Применить изменения» обеспечивает более быстрый рабочий процесс для большинства постепенных изменений в вашем приложении. Вы можете нажать Control + F10 (или кнопка «молния») |
To easily evaluate the value of any expression while debugging the program, select its text in the editor (you may press a Ctrl+W a few times to efficiently perform this operation) and press Alt+F8. | Нетрудно оценить значение любого выражения при отладке программы, выделите его текст в редакторе (вы можете несколько раз нажать Ctrl+W, чтобы эффективно выполнить эту операцию) и нажмите Alt+F8. |
To quickly evaluate the value of any expression while debugging the program, hold Alt and click this expression to see its value and calculate it, call a method, etc. | Для того, чтобы быстро оценить значение любого выражения во время отладки программы, удерживайте Alt и нажмите это выражение, чтобы увидеть его значение и вычислить его, вызвать метод и т.д. |
КОНТРОЛЬ ВЕРСИЙ | Version Control
English | Русский + картинка (опционально) |
---|---|
Android Studio прекрасно работает с Системами Контроля Версий (VCS от англ. Version Control System) подключенными к проекту | |
Use Alt+Shift+C to quickly review your recent changes to the project. | Используйте Alt+Shift+C чтобы быстро просмотреть последние изменения в проекте |
All your most indispensable VCS commands are just one-click away. Choose VCS | VCS Operations Popup on the main menu, and get a popup with the VCS commands that are relevant to the current context: | Все ваши самые необходимые команды VCS лишь одним щелчком мыши . Выберите VCS | VCS Operations Popup в главном меню, и получите всплывающее окно с командами VCS, которые имеют отношение к текущему контексту: |
The Version Control tool window shows all deleted, modified, and unversioned files in a single view. Use keyboard shortcut to show or hide this tool window. From the Changes tool window you can perform all the necessary version control actions: commit changes, manage changelists, put resources under version control, examine differences and more. | Окно инструмента Version Control отображает все удаленные, измененные и неотслеживаемые файлы в одном представлении. Используйте сочетание клавиш, чтобы показать или скрыть это окно инструмента. В окне инструмента Changes вы можете выполнить все необходимые действия по управлению версиями: зафиксировать изменения, управлять списками изменений, поместить ресурсы в систему контроля версий, изучить различия и многое другое. |
You can move any file to a changelist of your choice. To do that, just choose Move to Another Changelist on the file context menu in the Version Control tool window: | Вы можете переместить любой файл в список изменений по вашему выбору. Для этого просто выберите Move to Another Changelist в контекстном меню файла в окне инструмента управления версиями: |
If you don’t want to commit some of your changes to the repository, you can set them aside for a while, by moving to a separate changelist, or by putting them to a shelf. Select such file in the Local tab of the Changes tool window, and on the context menu choose Move to Another Changelist, or Shelve Changes. | Если вы не хотите сделать коммит для некоторых изменений в репозитории, вы можете отложить их на некоторое время, путем перехода к отдельным спискам изменений, или помещая их на полке /shelf/. Выберите этот файл на вкладке Local окна инструмента контроля версий, и в контекстном меню выберите команду Move to Another Changelist, или Shelve Changes. |
Android Studio lets you jump from your check-in comment to an issue in your task tracker. All you have to do is to define issue navigation patterns in the Settings | Version Control | Issue Navigation dialog: When you commit a changelist, and type the check-in comment, make sure it matches one of your issue navigation patterns. Later, when you browse through the changelists in the repository, such comments turn into hyperlinks: | Android Studio позволяет переходить от вашего комментария к проблеме в вашем трекере задач. Все, что вам нужно сделать, это определить шаблоны навигации проблемы в Settings | Version Control | Issue Navigation: Когда вы фиксируете список изменений (делаете коммит) и вводите комментарий для проверки, убедитесь, что он соответствует одному из шаблонов навигации по проблеме. Позже, когда вы просматриваете списки изменений в репозитории, такие комментарии превращаются в гиперссылки: |
The keyboard shortcut Ctrl+K enables you to quickly invoke the Commit Changes dialog. This dialog shows all modifications in project, gives summary information of file status and suggests improvements before check-in. | Комбинация клавиш Ctrl+K позволяет быстро вызвать диалог фиксации изменений (Commit Changes). Этот диалог показывает все изменения в проекте, дает сводную информацию о статусе файлов и предлагает улучшения перед регистрацией изменений. |
Version control annotations show the latest changes of each line in one click. Just right-click an annotation and use the Show Diff command in the context menu. | Аннотации контроля версий показывают последние изменения каждой строки одним щелчком мыши. Просто щелкните правой кнопкой мыши аннотацию и используйте команду Show Diff в контекстном меню. |
File | Settings и в левой части выбираем Version Control | Git. (см. http://developer.alexanderklimov.ru/android/studio/git.php)
после подключения git «руками» (git init):
10:56:55 Unregistered VCS root detected
The directory /home/si/AndroidStudioProjects/SmeltingController/Application/src/main is under Git, but is not registered in the Settings.
Add root Configure Ignore — выбираем Add root,получаем в Settings установленную систему контроля версий (аналогичный результат можно получить VCS | Import into Version Control | Create Git Repository).
You can move any file to a changelist of your choice. To do that, just choose Move to Another Changelist on the file context menu in the Changes tool window:
После создания репозитория через AS получаем следующее:
si@fregat
/AndroidStudioProjects/Thermocontroller/app/src/main $ git status
На ветке master
Неотслеживаемые файлы:
(используйте «git add …», чтобы добавить в то, что будет включено в коммит)
AndroidManifest.xml
java/
res/
ничего не добавлено в коммит, но есть неотслеживаемые файлы (используйте «git add», чтобы отслеживать их)
теперь удаляем .git
$ rm -R .git/
и делаем через CLI
$ git init
структура каталогов такая же.
после $ git status точно такая информация.
действия $ git add AndroidManifest.xml
аналогичны вызову правой кнопки на AndroidManifest.xml в окне Project и вызову Git->Add
Открыть проект Eclipse
English | Русский + картинка (опционально) |
---|---|
Use Basic Completion (Ctrl+Space) within HTML, CSS and other files, for completing image file names. | Используйте автозавершение кода (Ctrl+Space) в HTML, CSS и других файлах для завершения имени файла изображения, например. |
You can quickly review all styles currently applied to an HTML tag, by right-clicking the tag name and selecting Show Applied Styles For Tag from the context menu:
You can quickly view the image referenced at caret by using the Quick Definition (Ctrl+Shift+I). The underlying image will be opened in a popup instead of a separate editor tab.
It is possible to rename CSS selectors directly from HTML. Position the caret at the selector to be renamed and press Shift+F6 (Refactor | Rename).
Speed up HTML, XML or CSS development with Emmet.
Enable this framework in the corresponding page of the Editor | Emmet node (Settings/Preferences):
#DIFF
Have you noticed the buttons >> You can simply apply differences between panes, by clicking one of these chevron buttons.
Keep the Ctrl key pressed, and the chevron buttons change to
| |
^^ | | ^^^
^^^^ ^^^^
. Click one of these buttons to append contents of the current pane of the Differences viewer to the other pane.
If you keep Shift pressed, the chevrons turn into X . Click this button to revert changes.
#SCRATCH FILES
/media/si/KINGSTON/mywiki/AndroidStudio/scretch-f.png
SCRATCH FILES
English | Русский + картинка (опционально) |
---|---|
Scratch files allows you experiment and prototype right in the editor, without creating any project files. To create a scratch file, press Ctrl+Alt+Shift+Insert, and then select its language. | Scratch файлы позволяют экспериментировать и создавать программные этюды прямо в редакторе, не создавая никаких файлов проекта. Чтобы создать scratch файл, нажмите Ctrl+Alt+Shift+Insert, а затем выберите его язык. |
https://www.jetbrains.com/help/idea/2016.3/scratches.html IntelliJ IDEA provides a temporary editor. You can create a text or a piece of code for search or exploration purposes. IntelliJ IDEA suggests two types of temporary files: Scratch files The scratch files are fully functional, runnable, debuggable, etc. They require a language to be specified and have an extension. The scratch files are created via Ctrl+Alt+Shift+Insert. Scratch buffers The scratch buffers are only intended for pure editing, and as such they do not require specifying a language and do not have an extension. The scratch buffers belong to .txt type by default. This action has no dedicated shortcut, but you can configure one as described in the section Configuring Keyboard Shortcuts. Buffer files are reused after creating 5 files. So doing, after reuse, the content and language are reset. | На сайте jetbrains https://www.jetbrains.com/help/idea/2016.3/scratches.html читаем описание концепции scratch файлов. В IntelliJ IDEA есть временный редактор. Вы можете создать текст или фрагмент кода для поиска решения или в целях проверки. IntelliJ IDEA предлагает два типа временных файлов: Scratch файлы Скретч-файлы являются полностью функциональным, работоспособным кодом, есть возможность отладки. Для работы необходимо лишь определить язык и расширение. Скретч-файлы создаются с помощью Ctrl+Alt+Shift+Insert. Scratch буферы Scratch буферы предназначены для чистого редактирования, и поэтому они не требуют указания языка и не имеют расширения и относятся к типу .txt по умолчанию. |
Буферные файлы используются для создания всего 5 файлов. Таким образом, при последующем использовании буферов содержимое и язык буферов сбрасываются.
Executability for Java scratch files was added in IntelliJ 15, so you must upgrade for that feature.
You have several option how to run/debug the scratch file:
Click the icon next to the main method/class
Hit Control+Shift+R (Control+Shift+F10 on Linux/Windows) somewhere within the scratch file
Right click inside the method/class and select appropriate run/debug option
/. /
/home/si/AndroidStudioProjects/Wavdroid/app/Translations Editor — переводчик для ресурсов. не нашел
You can inject SQL into a string literal (Alt+Enter | Inject language or reference | ) and then use coding assistance for SQL. mywiki/AndroidStudio/sql_inject_into_string.png
Переключение между вкладками Design & Text в разметке:
ALT + SHIFT + LEFT/RIGHT on windows and ubuntu.
Источник