мой счетовод


<LinearLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"     android:orientation="vertical"    tools:context=".MainActivity">

TelephonyManager

использование телефонного менеджера

остановка звука при звонке

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

The special class PhoneStateListener

The solution is related to a class named PhoneStateListener. I put it in the main activity class. This is the class to handle the Phone-State change. If there’s incoming / outcoming call, this class will be invoked.


This is the code part of the PhoneStateListener, for the complete source follow the link at the bottom of article.


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


«Продажи смартфонов в России в I квартале 2014 в натуральном выражении, по сравнению с аналогичным периодом 2013, выросли на 61,3% до 5,58 млн. Продажи смартфонов в РФ в 2013 выросли на 51%, по сравнению с показателем 2012, и составили 18,5 миллионов устройств. Прирост продаж смартфонов в 2012, по сравнению с 2011, составил 57%».

запуск второго активити

public void onClick2 (View view) {
    // Создаем объект Intent для вызова новой Activity    Intent intent = new Intent(this, Main2Activity.class);    // запуск activity    startActivity(intent);}

чек бокс

package amurdroid.schet1609;
import android.app.Activity;import android.os.Bundle;import android.widget.CheckBox;import android.widget.CompoundButton;

RadioButton

package amurdroid.schet1609;
import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.RadioButton;import android.widget.TextView;public class MainActivity extends Activity
        implements View.OnClickListener {

Кнопки

package amurdroid.schet1609;
import android.app.Activity;import android.graphics.Typeface;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.EditText;public class MainActivity extends Activity
        implements OnClickListener {

SlidingDrawer

Учимся создавать слайдинг меню

Заработок на Андроид



Это очень частый вопрос: «Как можно начать зарабатывать на Android программировании»?

Его задают как начинающие, так и опытные программисты Java.

Давайте сначала прикинем, сколько можно зарабатывать и какие способы существуют.

горячие клавиши

Таблица 1. Комбинации клавиш для программирования
ДействиеКомбинация клавиш Android Studio
Завершение основного кода (имя любого класса, метода или переменной)CTRL + Space
Умное завершение кода (фильтрует список методов и переменных по ожидаемому типу)CTRL  + SHIFT  + Space
Оптимизация импортаCTRL + ALT + O
Команда поиска (Автозаполнение имени команды)CTRL + SHIFT + A
Быстрое исправление проекта (подсказки по ошибкам)ALT + ENTER
Форматирование кодаCTRL + ALT + L (Win)
OPTION + CMD + L (Mac)
Показать документацию для выбранных APICTRL + Q (Win)
F1 (Mac)
Показать параметры для выбранного методаCTRL + P
Создать методALT + Insert (Win)
CMD + N (Mac)
Перейти к источникуF4 (Win)
CMD + down-arrow (Mac)
Удалить строкуCTRL + Y (Win)
CMD + Backspace (Mac)
Поиск по символуCTRL + ALT + SHIFT + N (Win)
OPTION + CMD + O (Mac)
Таблица 2. Комбинации клавиш редактора проекта
ActionAndroid Studio Key Command
Построение проектаCTRL + F9 (Win)
CMD + F9 (Mac)
Построение и запуск проектаSHIFT + F10 (Win)
CTRL + R (Mac)
Переключение видимости окна проектаALT + 1 (Win)
CMD + 1 (Mac)
Переход между открытыми вкладкамиALT + left-arrow; ALT + right-arrow (Win)
CTRL + left-arrow; CTRL + right-arrow (Mac)

Java Core. Вопросы к собеседованию, ч. 3

Глубокое копирование и поверхностное копирование.


Точной копией оригинала является его клон. В Java это означает возможность создавать объект с аналогичной структурой, как и у исходного объекта. Метод clone() обеспечивает эту функциональность.

Поверхностное копирование копирует настолько малую часть информации, насколько это возможно. По умолчанию, клонирование в Java является поверхностным, т.е. Object class не знает о структуре класса, которого он копирует. При клонировании, JVM делает такие вещи: 
  1. Если класс имеет только члены примитивных типов, то будет создана совершенно новая копия объекта и возвращена ссылка на этот объект.
  2. Если класс содержит не только члены примитивных типов, а и любого другого типа класса, тогда копируются ссылки на объекты этих классов. Следовательно, оба объекта будут иметь одинаковые ссылки.

Глубокое копирование дублирует все. Глубокое копирование — это две коллекции, в одну из которых дублируются все элементы оригинальной коллекции. Мы хотим сделать копию, при которой внесение изменений в любой элемент копии не затронет оригинальную коллекцию. 

Java Core. Вопросы к собеседованию, ч. 2

Почему необходимо избегать метода finalize()?

Все мы знаем утверждение, что метод finalize() вызывается сборщиком мусора перед освобождением памяти, занимаемой объектом.

Java Core. Вопросы к собеседованию, ч. 1

Для тех, кто впервые слышит слово Java Core – это фундаментальные основы языка. С этими знаниями уже смело можно идти на стажировку/интернатуру.
Приведенные вопросы помогут вам освежить знания перед собеседованием, или почерпнуть для себя что-то новое. Для получения практических навыков занимайтесь на JavaRush.

Особенности интерфейсов для смартфонов. Принципы юзабилити

Основной целью лекции является выявление особенностей интерфейсов для смартфонов. В лекции рассказывается о принципах и шаблонах создания качественного интерфейса, об особенностях визуального дизайна. Приведены рекомендации для разработчиков, имеется большое количество разнообразных примеров. В конце приведен список дополнительных источников.

Программа курса «Java Core»

Программа курса
Курс состоит из 45 лекций разбитых на 9 модулей по темам
Модуль: Основы
Лекция #1.1: целочисленные типы, типы с плавающей точкой, bit operations
Лекция #1.2: массивы, java.lang.String, format
Лекция #1.3: for/switch/while, boolean logic(|, ||, &amp;, &amp;&amp;, !, ^)
Лекция #1.4: порядок выполнения операторов, построение internal DSL
Модуль: Процедурное программирование
Лекция #2.1: Циклы, итеративные алгоритмы
Лекция #2.2: Рекурсия I, основы
Лекция #2.3: Рекурсия II, проектирование рекурсивных алгоритмов
Лекция #2.4: Динамические структуры данных
Лекция #2.5: Память в Java: stack, heap, PermGen/Metaspace

Программист Java

Освой лучший кроссплатформенный язык!
Программируй под девизом «Написано однажды - работает везде!»«В современном мире уже даже не принято спрашивать, почему Java - это круто. Это очевидно.
Принцип "напиши один раз -- запускай где угодно" по прежнему вдохновляет программистов. А ведь именно Java - первый язык, который воплотил этот принцип в жизнь! Давно прошли те времена, когда Java был медленным. Сейчас за счет хитрых оптимизаций он работает очень быстро! Большое количество библиотек, форумов, специалистов, открытых исходников - это тоже Java. Если вы встретитесь с какой-либо проблемой, знайте, скорее всего она уже кем-то была решена - просто сделайте запрос в поисковой системе.

Вы хотите работать в серьезной корпоративной среде? Почти все банки и страховые компании в своей работе используют исключительно Java за счет ее надежности, переносимости и длительному циклу поддержки. Одноклассники, Мэйл.ру, Яндекс - да, да, тоже активно используют Java.
Игры? Аллоды, Майнкрафт и все такое...»


Ниже приводится время освоения, сложность,резюме после обучения и программа для Программиста Андроид.

Программист Android

В 2014 году количество смартфонов в России впервые превысило количество покупаемых телефонов, а Android-устройства заняли более 60% отечественного рынка, и 80% рынка мирового. Разработка приложений под Android сегодня требуется не только крупным компаниям - она выводит на качественно новый уровень любой бизнес - от доставки пиццы до службы такси. И деловая среда уже поймала эту волну. С 2012 по 2014 год количество вакансий для Android-разработчиков выросло на 110%, а с потребностью вырос и авторитет программистов, которые получили возможность не цепляться за первое предложение, а выбирать из предложенных вакансий наиболее оптимальную.

Android. Уровень 1 Разработка под мобильные устройства

Программа курса

ЗАНЯТИЕ 1. Введение в платформу Android
  •  Знакомство. Программа курса
  •  Общие сведения о платформе Android, историческая справка
  •  Архитектура платформы Android
  •  Этапы создания приложений, от идеи до GooglePlay
  •  Установка и настройка необходимых инструментов
  •  Основные компоненты Android SDK
  •  Обзор среды разработки (Eclipse и AndroidStudio)
  •  Пример простого приложения «Hello, Android!»