Как писать программы для Андроид для начинающих

Этот пост содержит подробное руководство по разработке приложений для Android для начинающих.

Содержание показать

Изучение разработки приложений для Android может показаться сложной задачей, но оно может открыть целый мир возможностей. Вы можете создать следующее «хитовое приложение», которое изменит то, как мы работаем или взаимодействуем друг с другом. Возможно, вы разработаете инструмент, который сможете использовать сами для улучшения рабочего процесса. Или, возможно, вы просто приобретете новый навык, который подняться по карьерной лестнице!

В любом случае, изучение разработки приложений для Android не такая сложная, как вы думаете, если вы понимаете, для чего нужны все различные движущиеся части, и у вас есть дорожная карта, которая поможет вам в этом. Этот пост и есть та самая дорожная карта!

Шаг 1. Загрузка инструментов, необходимых для разработки приложений для Android.

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

Android Studio — это IDE. Это означает «интегрированная среда разработки», которая по сути представляет собой интерфейс, в котором вы можете ввести свой код (в основном Java или Kotlin) и получить доступ к различным инструментам, необходимым для разработки. Android Studio позволяет получать доступ к библиотекам и API из Android SDK, тем самым предоставляя вам доступ к собственным функциям операционной системы. Вы также сможете встроить свое приложение в APK с помощью Gradle, протестировать его через «виртуальное устройство» (эмулятор) и отлаживать свой код во время его работы.

Руководство по разработке приложений для Android

Учитывая все вышесказанное, имейте в виду, что существуют и другие варианты разработки приложений для Android. Например, Unity — очень мощный инструмент для кроссплатформенной разработки игр, который также поддерживает Android. Точно так же Visual Studio с Xamarin — отличное сочетание для создания кроссплатформенных приложений на C#.

Android Studio — лучшее место для начала (за исключением разработки игр для Android), особенно потому, что она предоставляет все эти дополнительные инструменты и ресурсы в одном месте.

К счастью, настройка очень проста, и вам нужно только следовать инструкциям на экране.

Если вам нужна помощь в настройке, ознакомьтесь с нашим руководством по Android Studio для начинающих.

Шаг 2: Начните новый проект

Когда на вашем компьютере установлена ​​Android Studio, следующим шагом будет запуск нового проекта. Это простой процесс, но вам нужно будет принять несколько решений, которые повлияют на дальнейшую разработку вашего приложения для Android.

Начните новый проект

Выберите File > New > New Project . Теперь вам будет предложено выбрать «Project Template». Это определяет код и элементы пользовательского интерфейса, которые будут включены в ваше новое приложение при его загрузке.

Слово «Activity» относится к «экрану» в приложении. Таким образом, проект с «No Activity» будет полностью пустым, если не считать базовой файловой структуры. С другой стороны, «Basic Activity» создаст начальный экран для приложения и добавит кнопку внизу и меню-гамбургер вверху. Это общие элементы во многих приложениях для Android, так что это сэкономить вам время.

Тем не менее, это также может усложнить ситуацию, когда вы впервые столкнетесь с разработкой. По этой причине мы собираемся выбрать «No Activity». Это создаст для нас активность и несколько файлов, но не добавит много дополнительного кода.

No Activity

Выберите имя и «package name» для вашего нового приложения. Имя — это то, что увидит ваша аудитория, когда приложение будет установлено на их устройстве. Package name — это внутренняя ссылка, используемая Android, чтобы отличить его от других приложений. Оно должно быть составлено с использованием вашего домена верхнего уровня (например, .ru), доменного имени и имени приложения.

Например: ru.xpcom.sampleapp.

Если у вас нет домена или компании, просто используйте «ru», а затем что-то, что вам нравится!

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

Java против Kotlin при разработке приложений для Android

Одно из самых важных решений, которое вам нужно будет принять как разработчику Android, — это собираетесь ли вы изучать Kotlin или Java. Оба языка официально поддерживаются Google и Android Studio, но имеют некоторые отличия.

Java дольше всех поддерживается Google, и именно его разработчики годами используют для создания приложений для Android. Java также является одним из самых востребованных языков программирования в мире, что делает его отличным выбором для тех, кто хочет начать карьеру в сфере разработки. Как самый старый язык программирования для Android, Java также немного больше поддерживает по сравнению с Kotlin, хотя и ненамного.

Java против Kotlin при разработке приложений для Android

Kotlin, с другой стороны, стал предпочтительным выбором Google для разработки Android. Это значение по умолчанию при запуске нового приложения, и, вероятно, оно станет более распространенным в будущем. Kotlin также значительно легче освоить, если вы новичок.

По этим причинам Kotlin, вероятно, является предпочтительным языком для Android-разработчиков, которые учатся для развлечения или не стремятся разрабатывать для других платформ. Однако Java имеет больше смысла, если вы хотите стать профессиональным разработчиком.

Читайте также:
Обучающие программы это определение

Вы можете узнать больше об этих двух вариантах здесь, прочитав наше руководство Kotlin vs Java для Android .

Минимальный SDK

Наконец, вам также необходимо учитывать минимальный пакет SDK. Это самая низкая версия Android, которую вы хотите поддерживать в своем приложении.

Чем меньше вы сделаете это число, тем шире будет ваша потенциальная аудитория. Имейте в виду, что для последних версий Android характерен относительно низкий уровень внедрения, поэтому использование последнего обновления не позволит многим пользователям попробовать ваше творение.

Минимальный SDK

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

Шаг 3: Ознакомьтесь с файлами

Я помню, как впервые попробовал разработку приложений для Android. Я загрузил Android Studio и сразу же был озадачен увиденным. Там так много разных файлов, несколько типов кода, папок и многого другого! Это было далеко от единственного пустого файла, с которым я привык работать в Python или даже в QBasic (кто-нибудь помнит QBasic??).

Это может быть довольно сложно, но вот что вам нужно знать.

Ознакомьтесь с файлами

Открытый файл называется MainActivity.java или MainActivity.kt. Это основной файл логики для действия, которое будет определять поведение вашего приложения. Посмотрите слева, и вы увидите, что этот файл находится в: MyApplication > app > src > main > java > com > companyname > myapplication .

Используемые папки важны для разработки приложений для Android, поскольку они помогают Android Studio и Gradle находить все и правильно создавать (подробнее о Gradle чуть позже). Достаточно сказать, что вы не можете просто переименовать их по своему усмотрению!

Вы заметите, что на главной странице уже есть какой-то код. Это то, что мы называем «шаблонным кодом», что означает, что это код, который почти идентичен для разных проектов приложений и необходим для работы основных функций. Шаблонный код — это то, что вам придется вводить снова и снова! Одним из преимуществ Kotlin является то, что он требует меньше шаблонного кода, а это означает, что у вас будет меньше кода на экране, если вы выбрали именно его.

Знакомство с файлами layout (макета)

Роль этого кода состоит в том, чтобы сообщить Android, где находится соответствующий файл макета. Файл макета немного отличается от файла Kotlin/Java. Это определяет внешний вид действия и позволяет добавлять такие элементы, как кнопки, текст и окна браузера.

Вы найдете этот файл в: MyApplication > app > src > res > layout .

Он будет называться activity_main.xml. Обратите внимание, что файлы, хранящиеся в папке ресурсов, не могут использовать заглавные буквы, они должны использовать символ подчеркивания, чтобы разделять разные слова. Дважды щелкните этот файл, и он откроется в главном окне, где вы редактируете свой код. Обратите внимание, что вы можете переключаться между открытыми файлами с помощью вкладок вверху.

Знакомство с файлами layout (макета)

Вы можете просмотреть этот файл в представлении «Code», в представлении «Design» или в разделенном представлении, в котором эти окна отображаются рядом. В правом верхнем углу есть кнопки для переключения режима.

В представлении «Design» вы можете перетаскивать различные виджеты на экран. Представление кода показывает загрузку XML-скрипта. Когда вы добавляете новые виджеты через представление «Design», этот скрипт будет обновляться. Точно так же вы можете настроить свойства виджетов (называемых «views») здесь и увидеть их отражение в режиме реального времени через представление «Code».

В подавляющем большинстве приложений вам потребуется создавать новый файл Java/Kotlin и соответствующий XML-файл каждый раз, когда вам нужно новое действие. И для тех, кто задавался вопросом: да, это означает, что вам нужно изучать либо Kotlin, либо Java и XML. Это может показаться головной болью, но на самом деле упрощает процесс в долгосрочной перспективе.

Остальные файлы и папки

Но здесь гораздо больше файлов и папок, так что же они все делают?

По правде говоря, вам не нужно знать, их все. Но некоторые вещи, о которых полезно знать:

Манифест Android: это XML-файл в папке res, определяющий важные функции вашего приложения. Это включает в себя ориентацию приложения, действия, которые вы хотите включить в него, версию и т. д.

Drawable: эта папка находится в res. Здесь вы будете размещать такие вещи, как изображения, на которые вы хотите сослаться позже.

Values: эта папка ресурсов является удобным местом для хранения значений, которые будут использоваться глобально в вашем приложении. Например, это могут быть коды цветов (упрощающие изменение внешнего вида всего приложения) или строки (слова). Вы определите эти значения в отдельных XML-файлах, таких как colors.xml.

Gradle: Gradle — это инструмент, который берет все ваши файлы и объединяет их в работоспособный APK для тестирования. Он полезен для создания предварительных просмотров и т. д. Вам не нужно будет часто беспокоиться о файлах здесь, но если вы хотите добавить «зависимость», вы можете сделать это здесь. Зависимости — это внешние библиотеки, которые позволяют получить доступ к дополнительным функциям из вашего собственного кода.

Шаг 4. Протестируйте свое приложение

Первое, что вы должны сделать при знакомстве с любым новым языком программирования, — это создать приложение с надписью «Hello World». К счастью, в данном случае это очень просто, потому что это то, что делает код, который мы создали! Если вы посмотрите на XML, он включает небольшую метку, которая просто говорит: Hello World!

Если вы посмотрите на элементы управления вверху, вы увидите маленькую зеленую стрелку воспроизведения. Слева от неё находится раскрывающееся меню с именем телефона. Когда вы установили Android Studio, также должен был быть установлен образ системы Android вместе с диспетчером виртуальных устройств. Другими словами, у вас уже должен быть установлен и готов к работе эмулятор Android!

Читайте также:
Фотошоп как освоить программу

Нажав на эту зеленую стрелку, вы сможете запустить ее и протестировать свое приложение! Обратите внимание, что это также позволит вам использовать эмулированный телефон, как если бы это было настоящее устройство.

Вы можете изменить настройки своего виртуального устройства, такие как размер экрана, версия Android, пространство и т. д., выбрав «Tools» > «AVD Manager» . Также здесь вы можете скачать новые образы системы. Убедитесь, что ваше виртуальное устройство соответствует или превышает минимальный SDK, который вы установили в начале.

Кроме того, вы можете попробовать подключить настоящий смартфон к компьютеру и использовать его для тестирования приложения. Однако вам нужно включить режим разработчика и включить отладку по USB.

Шаг 5: Сделай что-нибудь!

Лучший способ научиться разработке приложений для Android — это делать! Это означает, что вы должны попытаться отредактировать код перед собой, чтобы посмотреть, сможете ли вы заставить его делать что-то новое.

Изменить отображаемое сообщение так же просто, как войти в свой XML и изменить строку с надписью «Hello World!» в «Привет, мир!»

Но что, если вы хотите добавить в свое творение какой-то интерактивный элемент? В этом случае вы можете разрешить пользователю щелкнуть кнопку, чтобы изменить текст.

Сделай что-нибудь!

Во-первых, вам нужно поместить эту строку внутри тега TextView в файле activity_main.xml:

Это даст текстовой метке имя «helloButton» и укажет, что метод «onHelloButtonClick» будет ссылаться на это представление. Мы собираемся добавить это в наш код.

Теперь вы можете добавить следующий код в файл MainActivity. Если вы видите, что какой-либо текст становится красным, когда вы его печатаете, это означает, что вам нужно «импортировать» этот код из Android SDK. Нажмите на красный текст, затем нажмите Alt+Enter, и Android Studio сделает это за вас автоматически. Короче говоря, это сообщает Android, что вы ссылаетесь на библиотеку, которая является частью Android SDK.

(Следующий пример написан на Java.)

В этом примере кода мы сначала создаем «объект» в коде с именем «helloButton». Затем внутри нашего метода onCreate (все в фигурных скобках) мы сообщаем Android, что этот объект представляет кнопку в нашем файле макета. Код, который вы размещаете здесь, будет запускаться первым при запуске приложения.

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

Запустите приложение, и теперь вы должны увидеть, что при нажатии на кнопку текст меняется!

Это очень простое приложение, но оно демонстрирует основы разработки приложений для Android. Как правило, вы будете создавать новые экранные элементы в файле макета, а затем определять их поведение в соответствующем файле Java или Kotlin.

По мере того, как вы становитесь более продвинутым, вам нужно будет начать манипулировать данными и хранить их. Для этого вы будете использовать переменные, содержащие числа и строки (слова).

У нас есть подробное руководство по Java , которое поможет вам начать работу.

Когда вы прочтете это, у вас будет базовое представление о том, как работает Java, и все, что осталось, — это научиться применять эти навыки в разработке приложений для Android. С этой целью отличная стратегия — выбрать проект, а затем работать над ним.

Источник: xpcom.ru

27 Бесплатных Курсов по мобильной разработке приложений для Android и IOS

Хай! Сегодня рассмотрим 27 Лучших и Бесплатных Курсов по мобильной разработке приложений для Android и IOS. Читай и получай пользу. Летс ГОУ!

Курсы по Android-разработке

1. «Уроки Android Studio»

Один из курсов по разработке приложений на Андроид

Формат — лекции с выполнением домашки.

Профессия разработчик на Андроид

Формат учёбы представлен в видеоуроках и текстовых уроках с выполнением тестов. В курс включены практические задания и работа с личным наставником. Общение с студентами потока происходит в закрытом чате.

Разработка на iOS - один из топовых курсов по IOS

Видеокурс состоит из 8 уроков, в котором простым языком объясняются основы SWIFT кодинга в программе Xcode для Apple OS. В ходе изучения курса, ты создашь мобильный шутер. Так сказать твоё первое портфолио. Однако выполнение больших заданий доступно лишь в платной версии продукта.

  • Калькулятор на Swift / #1 — Создание дизайна
  • #2 — Отображение данных на экране
  • #3 — Математические операции
  • iOS игра на Swift / #1 — Создание окружения
  • #2 — Добавление врагов и физики
  • #3 — Стрельба и уничтожение объектов
  • #4 — Основной экран меню

Лучший сайт из курсов по Kotlin для его изучения

Длительность обучения — 26 уроков в формате видео с выполнением задач и тестов. Сертификат не выдаётся, а обратной связи с преподавателями не возможна.

Начинка обучалки

  1. Введение.
  2. Ввод и вывод.
  3. Базовая арифметика.
  4. Структура языка — выражения и методы.
  5. Работа со строками.
  6. Интерполяция строк.
  7. Задачи по изученным темам.
  8. Логические выражения, сравнение переменных и тип Boolean.
  9. Условный оператор, диапазоны чисел.
  10. Практика — «Обратная разработка».
  11. Оператор when.
  12. Тип Double, библиотека Math.
  13. Задачи по изученным темам.
  14. Работа со строками (#2).
  15. Char, спецсимволы и экранирование.
  16. Преобразование простых типов.
  17. Оператор цикла for, repeat и массивы.
  18. Функции.
  19. Массивы и циклы — задачи.
  20. Цикл while, операторы управления циклом.
  21. Введение в ООП.
  22. Классы.
  23. Наследование и полиморфизм.
  24. Enum и interface.
  25. Nullability.
  26. Важный разговор.

3. «Kotlin»

Платформа для обучения котлин

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

Блок #1. Introduction
Hello, world!

Java to Kotlin conversion

Extension functions on collections

Блок #2. Conventions
Блок #3. Collections

All, Any and other predicates

Get used to new style

Блок #4. Properties
Properties
Блок #5. Builders

Extension function literals

String and map builders

The function apply

Builders: how it works

Блок #6. Generics

«Kotlin for Android Developers»

Курс для обучения Котлин

За обучение отвечают эксперты-преподаватели, они расскажут как использовать основы Kotlin для реализации первые приложений на Андроид. Всего 15 уроков + 4 теста для закрепления практики.

Читайте также:
Программа для Андроид подключение ТВ

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

  1. Welcome.
  2. Introduction.
  3. Keyword for a Function.
  4. Getting Set Up — Part 1
  5. Getting Set Up — Part 2.
  6. Basic Autoconvert.
  7. What is an Expression?
  8. Eradicate findViewById.
  9. NotesAdapter.
  10. Extension Functions.
  11. Data Classes.
  12. What Do Data Classes Generate?
  13. The Anko Library.
  14. String Templates for Boilerplate.
  15. Fixing the Data Store.
  16. Convert All the Queries.
  17. Kotlinize the Queries.
  18. Finishing Up.
  19. Conclusion.

4. «Руководство по языку Kotlin»

Обучение легендарному языку - котлин

Обратная связь в телеграм чате

Программа содержит 53 статьи для начинающих и продвинутых пользователей. Сайт основан на основе обучения Kotlin от англоязычным JetBrains https://kotlinlang.org

Начинка

  1. Основной синтаксис.
  2. Идиомы.
  3. Стилистика кода.
  4. Основные типы.
  5. Пакеты.
  6. Управляющие инструкции.
  7. Операторы перехода.
  8. Классы и наследование.
  9. Свойства и поля.
  10. Интерфейсы.
  11. Модификаторы доступа.
  12. Расширения.
  13. Классы данных.
  14. Изолированные классы.
  15. Обобщения (Generics).
  16. Вложенные классы.
  17. Перечисления (enum).
  18. Объекты.
  19. Делегирование.
  20. Делегированные свойства.
  21. Функции.
  22. Лямбды.
  23. Встроенные функции.
  24. Основы сопрограмм.
  25. Мультиплатформенные проекты.
  26. Создание мультиплатформенных проектов с помощью Gradle.
  27. Мульти-декларации.
  28. Коллекции.
  29. Интервалы.
  30. Приведение и проверка типов.
  31. Ключевое слово this.
  32. Равенство.
  33. Перегрузка операторов.
  34. Null безопасность.
  35. Исключения.
  36. Аннотации.
  37. Рефлексия.
  38. Функции области видимости.
  39. Типобезопасные строители.
  40. Псевдонимы типов.
  41. Ключевые слова и операторы.
  42. Документация Kotlin кода.
  43. Использование kapt.
  44. Использование Maven.
  45. Использование Ant.
  46. Kotlin и OSGi.
  47. Плагины для компилятора.
  48. Использование Gradle.
  49. Вызов Java из Kotlin.
  50. Вызов Kotlin из Java.
  51. Динамические типы.
  52. ЧаВо.
  53. Сравнение с Java.

5. «Базовый курс по Kotlin»

Учёба котлин

Жаркий контент на 100 часов = 10 недель обучения! Подойдёт для пользовтелей, знающих основы Kotlin. Сертификат не выдаётся ученикам (только при покупки подписки).

Программа

  1. Введение в Kotlin.
  2. Основы языка Kotlin.
  3. Классы и объекты.
  4. Классы и объекты (продолжение).
  5. Функции и лямбды.
  6. Практическое использование Kotlin в Android-разработке.
  7. Введение в Android-разработку.
  8. Элементы View.

7. «Курс по Kotlin для начинающих 2021»

Уроки котлин с нуля

15 практической теории и практики расскажут о применение языка программирования котлин на проектах, в частности создании приложении.

Нет сертификата и обратной связи

  1. Программирование и Kotlin.
  2. Kotlin в IntelliJ IDEA.
  3. Переменные в Kotlin.
  4. Типы данных.
  5. Условный оператор if-else.
  6. Условный оператор when.
  7. Nullable-типы.
  8. Цикл while.
  9. Массивы как тип данных.
  10. Цикл for.
  11. Строковые шаблоны в Kotlin.
  12. Списки в Kotlin.
  13. Словари в Kotlin.
  14. Функции в программировании.
  15. Обработка исключений в Kotlin.
  • PDF-версиюя курса с ответами на задания за 59 руб
  • Курс можно проходить на смартфоне

Источник: evgenev.ru

Android-разработка для начинающих: план изучения

Курсы, книги и видео для тех, кто только делает первые шаги в разработке Android-приложений.

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

0. Изучите Java

Да, я отметил этот шаг как нулевой, потому что перед изучением Android-разработки у вас должно быть знание Java. Вы можете сказать: “Но ведь Kotlin гораздо лучше подходит для Android-разработки, чем Java? И Google сделал его официальным языком для создания Android-приложений. Тогда зачем мне сначала изучать Java?”

Я не говорю, что вы не должны учить Kotlin. Я советую сначала изучить Java, потому что вы только начинаете заниматься Android-разработкой, а Java по-прежнему является важной частью Android. Ресурсов для обучения Android API на Kotlin пока недостаточно. Многие из уроков для начинающих написаны на Java. Поэтому для вас будет полезно понимать код на Java, не прогоняя его через конвертер.

Я посоветую для обучения Java книгу Head First Java. Она так интересно написана, что вам покажется, будто вы изучаете Java по комиксу. Другой хороший вариант — Thinking in Java.

1. Купите книгу по Android-разработке или пройдите онлайн-курс

После изучения Java приходит время начать обучаться Android-разработке. Я советую книгу Android Programming: The Big Nerd Ranch Guide для начала. Она основана на популярных буткэмпах Big Nerd Ranch. Вы можете использовать эту книгу в качестве практического руководства по Android-разработке, так как в ней много примеров кода с отличными пояснениями по ключевым концепциям.

Также я рекомендую Head First Android Development. Хотя эта книга немного устарела, она объясняет ключевые концепции очень интересным способом. Если вам понравился стиль Head First, вам будет приятно читать эту книгу.

Если вы предпочитаете видеоуроки, то советую вам пройти эти курсы:

  • Android Development for Beginners [от Google] от Udacity — бесплатно
  • The Complete Android Oreo Developer Course от Udemy — платно

Если вы хотите стать сертифицированным Android-разработчиком и у вас есть средства, я советую вам записаться на программу Android Developer Nanodegree от Udacity совместно с Google.

Android-разработка для начинающих

Google предлагает бесплатный курс Android Basics Nanodegree для незнакомых с программированием

Не забудьте добавить в закладки официальный обучающий гид для Android-разработчиков от Google. Этот гид затрагивает все базовые вещи и образцы кода, которые будут полезны для любого Android-разработчика.

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

Другие курсы:

  • Become an Android Developer from Scratch
  • Специализация Android App Development
  • Android-разработка от Loftschool
  • Программист Android от GeekBrains

2. Убедитесь, что понимаете эти концепции очень хорошо

Activity LifeCycle

Broadcast Receivers

  • Content Providers | Android Developers
  • Шаги по созданию Content Provider
  • Гид для идиотов по Android Content Providers, часть 1
  • Гид для идиотов по Android Content Providers, часть 2

Tasks и Back Stack

  • Tasks и Back Stack
  • Режим запуска Android Activity Launch Mode
  • Android “launchMode” (визуализация)
  • Обзор Task и Back Stack в Android

Устранение багов в приложении

  • Debug Your App | Android Studio
  • Making the most out of Android Studio Debugger

Context в Android

Android Views и Layouts

  • Layouts, Attributes и вы
  • Начинающие в Android: Views https://apptractor.ru/learn/plan-izucheniya-android-razrabotki-dlya-nachinayushhih.html» target=»_blank»]apptractor.ru[/mask_link]
Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru