Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MOBIL QQSHA.docx
Скачиваний:
0
Добавлен:
27.11.2023
Размер:
6.09 Mб
Скачать

ÓZBEKISTAN RESPUBLIKASÍ JOQARÍ HÁM ORTA ARNAWLÍ BILIMLENDIRIW MINISTRLIGI

TASHKENT INFORMACIYALÍQ TEXNOLOGIYALARÍ UNIVERSITETI NÓKIS FILIALÍ

Programmalıq injiniringkafedrası

«Mobil qurılmalar ushın programmalıq qurallar» páninen

Ámeliyat hám laboratoriya jumısların orınlaw ushın

METODIKALÍQ QOLLANBA

Nókis – 2017

Avtorlar: R.I.Oteniyazov, B.K.Kalmuratov

«Mobil qurılmalar ushın programmalıq qurallar» páninen ámeliyat hám laboratoriya jumısların orınlaw ushın metodikalıq qollanba, Muhammed al-Xorazmiy atındaǵı TITU NF, Nókis 2017. 84-bet.

“Mobil qurılmalar ushın programmalıq qurallar” páninen ámeliyat hám laboratoriya jumısların orınlaw boyınsha barlıq kórsetpeler hám laboratoriya jumısı tapsırmaları jámlengen.

Sonday-aq, usı metodikalıq qollanbadan “Mobil qurılmalar ushın programmalıq qurallar” páninen ózbetinshe úyreniwshi studentler hám oqıtıwshılar úyreniwi múmkin.

Pikir bildiriwshiler:

Muhammed al-Xorazmiy atındaǵı Tashkent informaciyalıq texnologiyaları universiteti Nókis filialı “Telekommunikaciya injiniringi”

kafedrası baslıǵı, t.i.k. K.K.Seytnazarov.

Ájiniyaz atındaǵı Nókis mámleketlik pedagogikalıq institutı “Fizika-matematika”

fakulteti dekanı t.i.k. M.A.Jumamuratov.

Muhammed al-Xorazmiy atındaǵı TITU Nókis filialı ilimiy keńesiniń 2017 jıl “_____” ____________ kúngi májilisinde baspaǵa ruxsat etilgan. (№____is qag’azınan kóshirme).

Mazmuní

1 – Á meliy jumıs. Android ortalıǵın ornatıw hám sazlaw. Android qollanbasın jaratıw hám sáykeslendiriw..........................................................

2 – Ámeliy jumıs. Java programmalıq tiliniń tiykarǵı konstrukciyaları. Klasslar hám obyektler. OBP principlerinen paydalanıw………....................

3 – Ámeliy jumıs. Android qollanbalarında processler (activities) hám hádiyseler (intents). Bir neshe processlerden (activities) paydal………...............................................................................................

4 – Ámeliy jumıs. Android sistemasında paydalanıwshı interfeysin jaratıw. Layout lar hám View lerden paydalanıw…………….................................

5 - Ámeliy jumıs. Android ta paydalanıwshı interfeysin jaratıw. Galereya hám súwretlerdi jaylastırıw……………….....................................................

6- Ámeliy jumıs. Android ta paydalanıwshı interfeysin jaratıwda Maǵlıwmatlar bazasınan paydalanıw. Shared Preference obyekti hám fayllar sistemasınan paydanıw……..........................................................

7- Ámeliy jumıs. Xabar jónetiw qollanbasın jaratıw……............................

8-Ámeliy jumıs. Google maps xızmetinen paydalanıw. Paydalanıwshı jaylasqan orındı anıqlaw……………………............................................

1 – Laboratoriyalıq jumıs. Java programmalastırıw tili tiykarında násillik hám polimorfizmnen paydalanıw programmalastırıw…………………..

2 – Laboratoriyalıq jumıs. Android interfeysin jaratıw. Berilgen variant boyınsha programma interfeysin jaratıw.

3 – Laboratoriyalıq jumıs. Qollanbalar jaratıwda máǵlıwmatlar bazası menen islew. SQLite tan paydalanıw. Sorawlar jaratıw.

4– Laboratoriyalıq jumıs. Mobil qollanbalarda tarmaqlı programmalastırıw. Server menen islew. JSON xızmeti.

1 – Ámeliy jumıs

Tema: Android ortalıǵın ornatıw hám sazlaw. Android qollanbasın jaratıw hám beyimlestiriw

Jumıstan maqset: Android operacion sisteması ushın qollanbalar jaratıwda kerekli bolǵan barlıq instrumental programmalıq qurallardı ornatıw hám dáslepki mobil qollanbalardı (Android sisteması ushın) jaratıw kónlikpelerine iye bolıw. Student usı ámeliy jumıs dawamında tómendegilerdi orınlawı kerek boladı:

  • Java development kit (JDK) ti ornatıw

  • Android SDK (Software Development Kit) ti ornatıw

  • Eclipse IDE nı ornatıw

  • Android development tools (ADT) eclipse ushın plugin di ornatıw

  • Android virtual mashinasın (AVD) ornatıw

Androidta qollanba islep shıǵıw ushın tómendegi programmalar ornatılǵan bolıwı kerek.

  1. Java Development Kit (JDK)

  2. Android Software Development Kit (SDK)

  3. Eclipse (kompilyator)

  4. Eclipse hám SDKnıń birgeliktegi kórinisi yaǵnıy ADT (Android developer tool) di de ornatıw múmkin.

  5. Androidta qollanbalardı iske túsiriw ushın Android Virtual Device (AVD) virtual ortalıǵı bolıwı.

Tiyis bolǵan programmalıq qurallardı ornatıw hám sazlaw tómendegi adımlar menen kórsetilgen:

  • 1-adım: Java development kit (JDK) ti ornatıw (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

  • 2- adım: Android SDK (Software Development Kit) ti ornatıw (http://developer.android.com/sdk/index.html)

  • 3- adım: Eclipse IDE ni ornatıw (http://www.eclipse.org/downloads/)

  • 4- adım: Android development tools (ADT) eclipse ushın plugin di ornatıw (https://dl-ssl.google.com/android/eclipse/)

  • 5- adım: Android virtual mashinası (AVD) nı ornatıw

Biraq joqarıdaǵı izbe-izlik ornına biz tikkeley ADT – Android Development Toolkit (Android SDK – Software Development Kit) ornatsaqta boladı. Bunda álbette Java development kit (JDK) ornatılǵan bolıwı lazım. Tómende ADT (Android development toolkit) hám Android virtual mashinasın (AVD) ornatıw izbe-izligi keltirilgen.

  1. JDK (Java Development Kit, offer latest version)

  2. ADT – Android Development Toolkit (Android SDK – Software Development Kit) http://developer.android.com/sdk/index.html?utm_source=weibolife#download

  3. Joqarıda berilgen internet siltemesinen ADT kóshirip alınadı hám arxivtan shıǵárılıp “eclipse” papkasınan eclipse.exe fayli iske túsiriledi.

  4. Qosımsha sazlaw (SDK nı ornatıw hám AVD jaratıw)

    • SDK Manager (SDK nıń kerekli bolǵan atributların ornatıw: SDK Platform, ARM)

  • AVD (Android Virtual Device) nı jaratıw

  • “CreatenewAVDwindow” aynasındaǵı kórsetilgen maydanlar toltırıladı

  • Jaratılǵan AVD nı iske túsiriw

  1. Create virtual Device in your PC (for example Tablet Samsung Nexus 10)

    1. To do this log in to system if you have account (if you Do not have account, you should register by this link https://cloud.genymotion.com/page/customer/login/ )

Note: offer email in gmail.com

    1. After registration check your email and activate your account in genymotion.com. After this you ready to download software

    2. Download GENYMOTION software by this link (for free)

https://cloud.genymotion.com/page/launchpad/download/

    1. Start install (genymotion-2.1.0-vbox.exe)

    1. Genymotion works by Virtual machine (Oracle Virtual Box) and it automatically installed Virtual machine on your PC. After installation you should setting up some attributes on genymotion window

    1. Select “No” and click “Setting”, then choose “ADB” section and put your SDK folder to “Path to Android SDK” (following picture) (in my casee:\data\Android\MC_Android\Install\adt-bundle-windows-x86_64-20131030\sdk\)

    1. Add virtual device, to do this click “Add”

    2. Click button “Connect” and fill required field (Username and password which you used download software)

    1. Select available devices from “Available virtual devices” section or use “Device model” field to filtering devices type

    1. Choose one of the Samsung Tablet type and click “Next” and then again “Next”

    1. And then you should bind your ADT with genymotion virtual device (in my case Nexus 10 – Android OS version 4.4.2).

      • Open Eclipse (ADT)

      • Help - > Install new software

  • Copy the linkhttp://plugins.genymotion.com/eclipseandpaste to “Work with” location and click the “Add” button to install software (following picture)

  • After installation restart your eclipse (ADT) and Run your project, your result will be appear genymotion virtual device

Genymotion Virtual device like Samsung Nexus 10

Your project result (simple example)

Ózbek tilinde: http://opennet.uz/timnet4u/androidda-tezkor-emulator-genymotion-virtual-mashinasidan-foydalanish.html internet resursınan alıwıńız múmkin.

2 – Ámeliy jumıs. Java programmalastırıw tiliniń tiykarǵı konstrukciyaları. Klass hám obyektler. OBP principlerinen paydalanıw.

Jumıstan maqset: Java programmalastırıw tili tiykarǵı konstrukciyalarınan paydalanıw boyınsha tiykarǵı kónlikpelerdi tákirarlaw. Klasslar hám obyektlerden paydalanıw. Obyektke baǵdarlanǵan programmalastırıw tiykarǵı principleri (násillik, inkapsuliyaciya, polimorfizm, abstrakt hám anonim klasslar hám basqalar) dan paydalanıw kónlikpelerine iye bolıw.

Máseleniń qoyılıwı: Student variantta keltirilgen tapsırmalardı Java programmalastırıw tili tiykarında sheshiwi hám nátiyje alıwı lazım.

1 – tapsırma: Java tilinde berilgen mısallardı sheshiń?

  1. Kompleks sanlar ústinde ámeller orınlań (Mısalı ushın: 2+3i,3+4i => 5+7i)?

  2. Eki waqıt aralıǵındaǵı parıqtı tabıwshı programma dúziń?

  3. Berilgen natural san kvadratın tabıwshı programmanı tómendegi tártip boyınsha dúziń:

12 = 1

22 = 1 + 3

32 = 1 + 3 + 5

42 = 1 + 3 + 5 + 7

...................

N2 = 1 + 3 + 5 + 7 + ... + (2N-1)

  1. n natural sanı berilgen. Tómendegilerdi esaplań:

1*3*5*....*nn taq sanlar ushın

2*4*6*....*nn jup sanlar ushın

  1. Қуйидаги ифодани ҳисобланг

cos1 cos1+cos2 cos1+cos2+...+cos n

----- * -------------- * .. * ------------------------- ;

sin1 sin1+sin2 sin1+sin2+...+sin n

  1. Tómendegi ańlatpanı esaplań

cos(1+cos(2+...+(cos(39+cos40))....);

  1. 1;1/2;1/3;1/4;1/5;1/6…1/N sanlarınıń kóbeyesi hám qosındısın salıstırıń

  2. Tómendegi ańlatpanı esaplań

1

----------------------------

1

1+ --------------------

1

3+ ----------------

1

5+ -------------

...

...

1

-------------

1

101+ -----

103

  1. Tómendegi ańlatpanı esaplań

1 1 1

--- + ------ +...+ -------------- ;

a a(a+1) a(a+1)...(a+n)

  1. 3 sanınıń sonday dárejesin tabıń, ol berilgen A sanınan úlken san bolsın.

  2. 2 sanınıń sonday dárejesin tabıń, ol berilgen A sanına qaldıqsız bólinsin.

  3. Tómendegi ańlatpanı esaplań

1 1 1 1

--- + ----- + -----+...+ --------- ;

a a2 a4 a2^n

2 – tapsırma: Klasslar hám obyektlerden paydalanıp programmalastırıw. OBP principlerinen paydalanıń

1

xızmetshi, injener

qurılma, telefon

2

kafedra xızmetkeri, muǵalim

baspa, kitap

3

cirk artisti, úyretiwshi

sınaq, test

4

radiodetal, kondensator

awmaq, rayon

5

qurılma, monitor

tovar, quwırshaq

6

kitap, sabaqlıq

hújjet, kvitanciya

7

imtixan, pitkeriw imtixanı

transport quralı, avtomobil

8

qala, megapolis

ushıwshı apparat, vertolyot

9

ónim, sútli ónim

mámleket, monarxiya

10

bank hújjeti, chek

haywan, tigr

11

poezd, ekspress poezd

korabil, paroxod

12

samolyot, adam tasıwshı layner

oyınshı, xokkeist

13

mámleket, respublika

áskeriy juwapker, ásker

14

toǵay haywanı, ayıw

mekeme, ofis

15

jelkenli keme, korvet

mádeniyat xızmetkeri, súwretshi

16

futbolshı, dárwazaban

baylanıs quralı, telegraf

17

oficer, rota komandiri

oyınshı, voleybolist

18

mekeme, klinika

xızmetker, dekan

19

rejissyor, teatr rejissyorı

shólkem, kolledj

20

telefon, mobi telefon

kórkem-óner xızmetkeri, qosıqshı

21

vrach, xirurg

basshı, zavod direktorı

22

mektep, licey

orın, qala

23

rejissyor, kino rejissyorı

jeke adam, jumısshı

3 – Ámeliy jumıs. Android qollanbalarında processler (activities) hám hádiyseler (intents). Bir neshe processlerden (activities) paydalanıw.

Jumıstan maqset: Android qollanbaların jaratıwda activity lerden paydalanıw. Tiykarǵı Java(activity) fayllar hám layout (xml) lar strukturası hám olardı ózlestiriw kónlikpelerine iye bolıw, bir hám bir neshe activity hám layout lardı – bir-birine baylanıstırıw.

Máseleniń qoyılıwı: Android sistemasında bir aynadan ekinshi aynaǵa ótiw hám artqa (aldıńǵı aynaǵa) qaytıwshı qollanba jaratılsın hám hár bir aynaǵa sáykes halda xabarlar payda etilsin. Sáykes túrde xml fayllar klassifikaciyası keltirilsin.

Tapsırmaлар:

  1. Eki forma jaratılsın hám birinshi formadaǵı túyme arqalı ekinshi formaǵa shaqırılsın.

  2. 3 textview hám 2 button qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  3. 2 textview,2 button hám 2 checkbox qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  4. 2 edittext, 2 button hám 2 imagebutton qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  5. Birinshi aynada 3 button hám ekinshi aynada 2 textview, 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  6. 3 textview, 2 radiobutton hám 1 proressbar qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  7. 2 timepicker,2 button hám 2 datepicker qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  8. onCreate(),onStart() hám onResume() metodların qollanǵan halda hár bir metod shaqırılǵanda nátiyje (qandayda bir xabar beriwshi) shiǵıwshı programma dúzilsin.

  9. Birinshi aynada 3 textview, 1 proressbar hám ekinshi aynada 2 textview, 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  10. Birinshi aynada 3 radiobutton, 1 tooglebutton hám ekinshi aynada 2 imagebutton, 1 spinner hám 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  11. onPause(),onStop(), onRestart() hám onDestroy() metodların qollanǵan halda hár bir metod shaqırılǵanda nátiyje (qandayda bir xabar beriwshi) shıǵıwshı programma dúziń.

  12. Birinshi aynada 2 autocomplete textview, 2 edittext hám 2 button qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  13. 2 radiobutton, 2 button hám 2 imagebutton qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  14. Birinshi aynada 3 button hám ekinshi aynada 2 textview,2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  15. 3 imagebutton, 2 edittext hám 1 timepicker qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  16. 2 proressbar, 2 button hám 2 datepicker qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  17. Birinshi aynada 3 edittext, 2 proressbar hám ekinshi aynada 2 textview, 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  18. Birinshi aynada 3 spinner, 2 tooglebutton hám ekinshi aynada 2 imagebutton,1 datepicker hám 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  19. Birinshi aynada 2 autocomplete textview, 2 edittext hám 2 button qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  20. 3 image button, 2 button hám 1 datepicker qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  21. 2 proressbar, 2 button hám 2 timepicker qoyılǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

  22. Birinshi aynada 3 autocomplete textview, 2 spinner hám ekinshi aynada 2 textview, 2 button bar bolǵan qollanba interfeysin jaratıń. Programmanıń xml faylı klassifikaciyası keltirilsin.

Mısal:

Androidta jańa proekt jaratıladı hám jaratılǵan proekt tómendegi kórsetilgen fayllar tiykarında redaktorlanadı (SubActivity.java,activity_sub.xml faylları jańadan jaratıladı)

MainActivity.java

import android.os.Bundle;

import android.app.Activity;

import android.view.*; // Menu;

import android.content.Intent;

import android.widget.TextView;

public class MainActivity extends Activity {

TextView mText;

final static int ACT_EDIT = 0;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mText = (TextView)findViewById(R.id.textView1);

}

public void mOnClick(View v) {

Intent intent = new Intent(this, SubActivity.class);

startActivity(intent);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}

activity_main.xml

<RelativeLayoutxmlns: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:paddingBottom="@dimen/activity_vertical_margin"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

tools:context=".MainActivity">

<TextView

android:id="@+id/textView1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="this is main activity"/>

<Button

android:id="@+id/button1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@+id/textView1"

android:layout_marginTop="36dp"

android:onClick="mOnClick"

android:text="Call"/>

</RelativeLayout>

SubActivity.java

package com.example.example12_multiple_activities;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.EditText;

public class SubActivity extends Activity {

EditText mEdit;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_sub);

}

public void mOnClick(View v) {

finish();

}}

activity_sub.xml

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical">

<TextView

android:id="@+id/textView2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="this is sub activity"/>

<EditText

android:id="@+id/editText1"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:ems="10"/>

<Button

android:id="@+id/button2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:onClick="mOnClick"

android:text="OK"/>

<Button

android:id="@+id/button3"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:onClick="mOnClick"

android:text="Cancel"/>

</LinearLayout>

Manifest.xml

<?xmlversion="1.0"encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

package="com.example.example12_multiple_activities"

android:versionCode="1"

android:versionName="1.0">

<uses-sdk

android:minSdkVersion="8"

android:targetSdkVersion="18"/>

<application

android:allowBackup="true"

android:icon="@drawable/ic_launcher"

android:label="@string/app_name"

android:theme="@style/AppTheme">

<activity

android:name="com.example.example12_multiple_activities.MainActivity"

android:label="@string/app_name">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

<activity

android:name="com.example.example12_multiple_activities.SubActivity"

android:label="SubActivity"/>

</application>

</manifest>

Programma nátiyjesi

4 – Ámeliy jumıs. Android sistemasında paydalanıwshı interfeysin jaratıw. Layout lar hám View lerden paydalanıw.

Jumıstan maqset: Android qollanbaların jaratıwda Layout (RelativeLayout, LinerLayout, TableLayout, AbsoluteLayout, FrameLayout) lar hám View (button, textView, editText, spinnerView, checkbox, radiobutton, radioGroup, toggleButton, ImageButton hám basqalar) lerden paydalanıw kónlikpelerine iye bolıw.

Máseleniń qoyılıwı: Student berilgen variant boyınsha berilgen komponentanıń tolıq anıqlamasın keltiriwi há onnan paydalanıw kónlikpelerine iye bolıwı kerek.

Tapsırmaлар:

  1. RelativeLayout qásiyetleri anıqlaması

  2. Textview qásiyetleri anıqlaması

  3. Button qásiyetleri anıqlaması

  4. Checkbox qásiyetleri anıqlaması

  5. TableLayout qásiyetleri anıqlaması

  6. Proressbar qásiyetleri anıqlaması

  7. Timepicker qásiyetleri anıqlaması

  8. ExpandableListView qásiyetleri anıqlaması

  9. AbsoluteLayout qásiyetleri anıqlaması

  10. Datepicker qásiyetleri anıqlaması

  11. Tooglebutton qásiyetleri anıqlaması и

  12. Spinner qásiyetleri anıqlaması

  13. Imagebutton qásiyetleri anıqlaması

  14. radioButton qásiyetleri anıqlaması

  15. AutoCompleteTextView qásiyetleri anıqlaması

  16. LinerLayout qásiyetleri anıqlaması

  17. radioGroup qásiyetleri anıqlaması

  18. CalendarView qásiyetleri anıqlaması

  19. ListView qásiyetleri anıqlaması

  20. ImageView qásiyetleri anıqlaması

  21. FrameLayout qásiyetleri anıqlaması

  22. MultiLineText qásiyetleri anıqlaması

  23. MultiAutoCompleteText qásiyetleri anıqlaması

  24. Gridlayout qásiyetleri anıqlaması

  25. Gallery qásiyetleri anıqlaması

  26. ScrollView qásiyetleri anıqlaması

Соседние файлы в предмете Mobil qosimshalar