Разработка мобильных приложений
Разработка программы с использованием библиотеки okhttp3. Подключение библиотеки в gradle. Прописание разрешения на работу с интернетом API (программный интерфейс) в "AndroidManifest.xml", разметки в "activity_main.xml", кода - в "MainActivity.kt".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | практическая работа |
Язык | русский |
Дата добавления | 09.02.2021 |
Размер файла | 235,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Российский экономический университет имени Г.В. Плеханова»
МОСКОВСКИЙ ПРИБОРОСТРОИТЕЛЬНЫЙ ТЕХНИКУМ
Специальность: 09.02.07 Информационные системы и программирование
Квалификация: Программист
Практическая работа по
«Разработке мобильных приложений»
Выполнил студент
Группы П50-4-18
Довиденко Кирилл
Москва 2020
Цель работы: Написать программу с использованием библиотеки okhttp3.
1. Подключим библиотеку okhttp3 в gradle.
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 29
buildToolsVersion "29.0.3"
defaultConfig {
applicationId "com.example.api"
minSdkVersion 19
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core-ktx:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.squareup.okhttp3:okhttp:3.12.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}
2. В «AndroidManifest.xml» пропишем разрешение на работу с интернетом API.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.api">
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
3. В «activity_main.xml» пропишем разметку.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="Факт о Чаке Норрисе"
android:id="@+id/jock"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:textSize="20sp"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/nextBtn"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="32dp"
android:text="Следующая шутка"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progressBar"
style="?android:attr/progressBarStyle"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="8dp"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
библиотека интернет разметка код
4. В «MainActivity.kt» пропишем код.
package com.example.api
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.View
import kotlinx.android.synthetic.main.activity_main.*
import okhttp3.*
import org.json.JSONObject
import java.io.IOException
class MainActivity : AppCompatActivity() {
val URL = "https://api.icndb.com/jokes/random"
var okHttpClient: OkHttpClient = OkHttpClient()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
nextBtn.setOnClickListener {
runOnUiThread {
progressBar.visibility=View.GONE
}
val request:Request = Request.Builder().url(URL).build()
okHttpClient.newCall(request).enqueue(object : Callback{
override fun onFailure(call: Call, e: IOException?) {
Log.e("Error", e.toString())
}
override fun onResponse(call: Call, response: Response) {
val joke = (JSONObject(response!!.body()!!
.string()).getJSONObject("value").get("joke")).toString()
runOnUiThread {
progressBar.visibility = View.GONE
jock.text = joke
}
}
})
}
}
}
Вывод: Мной была написана программа с использованием библиотеки okhttp3.
Результат работы:
Рисунок 1 - Главная страница
Рисунок 2 - Следующая шутка, при нажатии на кнопку «Следующая шутка».
Размещено на Allbest.ru
...Подобные документы
Разработка программы для рисования различных правильных многоугольников с помощью объектно-ориентированного языка программирования. Использование для разработки среды C++ Builder 6 и библиотеки VCL. Разработка интерфейса приложения и алгоритма его работы.
курсовая работа [616,4 K], добавлен 18.10.2010Создание Win-приложения для библиотеки, которое позволяло бы осуществлять операции выдачи и сдачи книг в соответствии со сроками. Выбор программных и технических средств реализации проекта. Разработка интерфейса системы, описание реализованных классов.
курсовая работа [3,1 M], добавлен 14.08.2015Определение программного модуля. Принципы использования dll-библиотеки. Преимущества и недостатки использования dll-библиотек. Описание коэффициентов моделей. Разработка структуры классов. Реализация библиотеки классов в среде разработки MS Visual Studio.
дипломная работа [676,6 K], добавлен 16.06.2015Разработка Windows-приложений с использованием библиотеки MFC. Базовый набор классов, написанных на языке С++ и предназначенных для упрощения процесса программирования под Windows. Фундаментальные идеи объектно-ориентированного программирования.
курсовая работа [348,1 K], добавлен 02.07.2011Разработка программного продукта для полнофункционального учета работающих в библиотеке людей и читателей. Сбор исходных данных и разбиение проекта на модули. Структура проекта базы данных, интерфейс проекта. Настройка параметров, обучение персонала.
курсовая работа [1,9 M], добавлен 02.10.2014Разработка программы, моделирующей работу библиотеки. Функция поиска по базе книг и граждан, записанных в библиотеку. Поиск книги. Добавление или удаление абонента. Текст программы на С#. Просмотр списка должников. Запись книги на абонента в программе.
курсовая работа [426,9 K], добавлен 20.02.2014Основы создания мидлетов (midlet) - MIDP приложений для мобильных устройств на языке Java. Особенности устройств, для которых мидлеты предназначены. Библиотеки javax.microedition. Практические примеры создания MIDP приложений для телефона и их запуск.
методичка [25,9 K], добавлен 30.06.2009Теоретические основы разработки Windows-приложений с использованием библиотеки MFC. Создание приложения с помощью Visual C++. Описание логической структуры приложения. Установка и запуск программы. Входные и выходные данные. Преимущество MFC библиотек.
курсовая работа [563,2 K], добавлен 21.06.2011Разработка программы, проверяющей уровень знаний по разделу стереометрии и позволяющей выбор один из нескольких вариантов и ввод ответа. Характеристика библиотеки MFC, тела, классов и файлов приложения, цикла сообщений и текстовых запусков программы.
курсовая работа [1,5 M], добавлен 28.06.2011Унифицированный язык моделирования UML. Проектирование и документирование программных систем. Листинги кода проектируемой программы, сгенерированные RationalRose. Модель информационной подсистемы для управления, учета, контроля и ведения библиотеки.
курсовая работа [1,3 M], добавлен 22.06.2011Администрирование баз данных. Проектирование баз данных, язык запросов к базе данных. Анализ средств разработки приложений. Планирование разработки программы "Электронный каталог" для библиотеки ОГАУ, предварительный проект и практическая реализация.
дипломная работа [1,2 M], добавлен 02.06.2015Теоретические основы написания Windows-приложений с использованием библиотеки MFC. Основы программирования под Windows. Проектирование приложений в среде Microsoft Visual C++. Описание логической структуры приложения, его функциональное назначение.
курсовая работа [1,3 M], добавлен 12.12.2011Описание промышленных компьютерных сетей. Анализ файлов, передаваемых по ним и общие требования к реализуемой библиотеке. Архитектура и уровни интерфейса библиотеки, принципы реализации алгоритмов исполняемых и неисполняемых структурированных файлов.
дипломная работа [883,5 K], добавлен 12.08.2017Особенности разработки и представления проекта программы, представляющей собой аналоговые часы с циферблатом, часовой, минутной и секундной стрелкой. Применение MS Visual Studio 2010, языка С++ для ее написания и компилирования. Специфика библиотеки MFC.
курсовая работа [440,2 K], добавлен 17.03.2014Анализ основных аспектов технологии компьютерного зрения, необходимых для выполнения работы. Изучение характеристик библиотеки OpenCV, оценка актуальности работы по распознаванию жестов рук. Поэтапный отчет о работе над программным обеспечением.
курсовая работа [669,9 K], добавлен 20.05.2017Методика и основные этапы разработки web-библиотеки, требования к ней, содержание, структура и элементы. Идейное описание системы, направления ее проектирования. Порядок написания кода и тестирование систем, ее важнейшие функции и сферы использования.
курсовая работа [1,2 M], добавлен 08.02.2013Создание программы для хранения и обработки данных о съеме/сдаче жилья. Написание программы на языке C++ с использованием библиотеки Qt; использование исходного кода для создания приложения под Windows, Linux, Mac OS X без дополнительных изменений кода.
курсовая работа [60,4 K], добавлен 07.03.2013Разработка интерфейса и программного обеспечения виртуальной библиотеки. Проектирование структуры экранов и навигационной системы. Построение прототипа пользовательского интерфейса. Тестирование и модификация прототипа. Экспертная оценка разработки.
курсовая работа [41,2 K], добавлен 19.12.2010Проектирование программы, которая ведет учет книг в книгохранилище библиотеки. Выбор языка программирования. Разработка и элементы тестового приложения, его структура. Заполнение основных полей для добавления книги. Тестирование программы, ее алгоритм.
курсовая работа [1,5 M], добавлен 20.11.2015Разработка виртуальной библиотеки, которая в электронной форме и с лаконичным, удобным интерфейсом позволяет хранить информацию в надёжном и компактном виде, при этом значительно увеличивая скорость поиска нужной информации и проста в распространении.
курсовая работа [1,1 M], добавлен 05.07.2012