Мазмуну[Жашыруу][Көрсөтүү]
Смартфондор бүгүнкү күндө ар кандай операциялык системаларды колдонуп, керектөөчүлөргө алардын талаптарына жана кызыкчылыктарына эң жакшы жооп берген платформаны тандоого мүмкүндүк берет.
Атаандаштыкка жөндөмдүү программаларды сатуу жана мүмкүн болушунча кеңири аудиторияга жетүү үчүн бардык негизги операциялык системалардын, анын ичинде Android, iOS жана Windowsтун мүмкүнчүлүктөрүн жана муктаждыктарын эске алышыңыз керек.
Бул башка долбоорлорго сарпталышы мүмкүн болгон көп убакытты, акчаны жана күчтү текке кетирип, бир эле программанын көптөгөн версияларын чыгаруу керек дегенди билдиреби?
Платформалар аралык колдонмолорду иштеп чыгуу куралдары бирдиктүү глобалдык код базасын куруу жана колдоо үчүн зарыл болгон функцияларды сунуштоо менен бул аракетти жеңилдетет.
Бирок, жергиликтүү колдонмолорду иштеп чыгуу платформасы жөнүндө эмне айтууга болот? Алар платформалар аралык өнүгүү платформасынын алдында жетишпейби?
Келгиле, кросс-платформа алкактарын карап көрөлү, жооп табуу үчүн React Native (кайчылаш иштеп чыгуу платформасы), Swift (iOS иштеп чыгуусу үчүн) жана Android иштеп чыгуусун салыштырып көрөлү.
Cross-Platform Frameworks
Иштеп чыгуучулар көптөгөн платформаларда иштеген программаларды түзүү үчүн кайчылаш платформа алкактарын колдонушат. Мындай программалар, мисалы, Android жана iOS да иштей алат.
Колдонмонун коду жазылгандан кийин, ал көптөгөн операциялык тутумдарга таркатылышы мүмкүн. Бул функция иштеп чыгуучуларга тезирээк, натыйжалуу жана ишенимдүү иштөөгө мүмкүндүк берет.
кайчылаш-платформа өнүктүрүү максаты өндүрүү болуп саналат мобилдик колдонмолор бир нече платформалар менен шайкеш келет.
Натыйжада, ал бардык түзмөктөрдө ырааттуу иштейт. Бул кайчылаш-платформа жана гибрид программаларды айырмалоо үчүн абдан маанилүү болуп саналат. Кросс-платформалык мобилдик иштеп чыгууда, жергиликтүү компоненттер, айрыкча колдонуучу интерфейстеринде иштөөнү жогорулатуу үчүн колдонулат.
Кросс-платформаны иштеп чыгуунун эки түрү бар: бирин дароо бир катар системаларда иштетүүгө болот, экинчиси ар бир платформаны өз алдынча курууну талап кылат. Колдонмону куруу үчүн колдонулган программалоо тили жана куралдар өндүрүлгөн колдонмонун түрүн аныктайт.
Платформалар аралык өнүгүүнүн кээ бир артыкчылыктары төмөнкүлөр.
- Кодду кайра колдонуу мүмкүнчүлүгү: Иштеп чыгуучулар бир коддук базаны куруп, аны көптөгөн операциялык системалар жана башка тиркемелер үчүн программаларды түзүү үчүн колдоно алышат. Бул функция иштеп чыгуучулардын код базасын тейлөөнү жеңилдетет.
- Базарга чыгуу убактысын кыскартуу: Бул иштеп чыгуучуларга колдонмолорду мурда болуп көрбөгөндөй тезирээк иштеп чыгууга жана жайылтууга мүмкүндүк берет. Бул рынокко чыгуу убактысын кыскартат.
- Өнүктүрүү чыгымдарын азайтат: Кросс-платформа алкактары иштеп чыгуу процесстерин жөнөкөйлөтүү жана долбоордун жалпы мөөнөтүн кыскартуу аркылуу колдонмону иштеп чыгууга кеткен чыгымдарды азайтат.
- Жергиликтүү тиркемелер менен салыштырууга боло турган аткаруу жана тажрыйба: Гибриддик колдонмолордун көрүнүшү жана иштеши жергиликтүү колдонмолордукуна окшош. Натыйжада, иштеп чыгуучулар ылдамдыгын же колдонуучу тажрыйбасын жоготпостон тезирээк колдонмолорду иштеп чыга алышат.
Эмне React-Native?
React Native – бул Android жана iOS колдонмолорун түзүүгө арналган кайчылаш платформа JavaScript иштеп чыгуу негизи. Бул көп жылдар бою платформалар аралык колдонмолорду куруу үчүн эң популярдуу алкактардын бири болгон.
React Native Swiftке караганда деталдуу документтерди жана жакшы колдоону камсыз кылат. Анын кодун онлайн жана рабочий колдонмолор үчүн дагы колдонсо болот.
Facebookтун негиздөөчүсү буга чейин социалдык медиа фирмасы HTML-5 тиркемесин жергиликтүү тиркемеден тандап, чоң ката кетиргенин айткан. Андан кийин ал социалдык тармактын колдонуучуларына мобилдик тажрыйбаны жакшыртат.
Андан кийин, Facebook инженери Джордан Уолк фон JavaScript жиптерин колдонуу менен мобилдик платформалар үчүн UI компоненттерин түзүү ыкмасын ойлоп тапкан. Андан кийин Facebook жергиликтүү тиркемелерди иштеп чыгуу үчүн прототиптерди өркүндөтүү үчүн Hackathon өткөрдү.
Окуялардын бул тизмеги 2015-жылы React Native биринчи версиясынын чыгышына алып келди. Ошол учурда Facebook React Nativeди өндүрүштүк колдонмолордо колдоно баштаган.
React Native функциясы ReactJs сыяктуу иштейт, бирок DOMды башкаруу үчүн Virtual Dom керек эмес. Ал кардар түзмөктөрүнүн фондо процессинде кыраакы иштейт жана JavaScriptти иштеп чыгуучулар үчүн мүмкүн болгон тилге айлантат.
Ал ошондой эле пакеттик көпүрөнү жана сериалдаштырууну колдонуу менен жергиликтүү түзмөктөр менен асинхрондук байланышты түзө алат. React Native иштеп чыгуучулары JavaScript жана JSX синтаксисинде код түзүшөт.
React Native Benefits
- Жогорку өндүрүмдүүлүк: React Native модулдарды жана жергиликтүү контроллерлорду колдонуу менен өзгөчө жакшы иштеген колдонмолорду түзүү боюнча репутацияга ээ. RN операциялык тутумдун түпнуска компоненттерине туташып, Native API'лер аркылуу кодду чыгарат. React Nativeдин жогорку ылдамдыгы анын UI жана Native API'лерден өзүнчө жиптерди түзүү жөндөмдүүлүгүнө байланыштуу. React Native WebView колдоно алса да, натыйжада колдонмонун ылдамдыгы азаят.
- Тез кайра жүктөө: Бул мүмкүнчүлүк менен React Native иштеп чыгуучулары алдын ала көрүү терезесинде колдонмонун кодундагы өзгөрүүлөрдү тез көрө алышат. Кодуңуздан UIди өзгөртүү колдонмоңузду кайра курууну талап кылбайт. Бул дагы тезирээк иштеп чыгууга жана маселени оңдоого өбөлгө түзөт.
- модулдар: React Native модулдук архитектурасы программанын функционалдуулугун модулдар деп аталган кыймылдуу бош бөлүктөргө бөлөт. Бул техниканын ар тараптуулугу, көбүрөөк синхрондоштуруусу жана үзгүлтүксүз жаңыртуусу бардык артыкчылыктар болуп саналат. Иштеп чыгуучулар бул функцияны ыкчам жаңыртууларды сунуштоо үчүн колдоно алышат. Андан тышкары, модулдар көп жолу колдонулуучу скрипттер жана Web APIs сыяктуу.
- Функцияны арзан баада кеңейтүү: React Native аны арзан баада учурдагы колдонмолорго жаңы функцияларды кошууну жеңилдетет. Бул UI компоненттерин аны толугу менен кайра иштеп чыгуунун ордуна, учурдагы программага киргизүү сыяктуу жөнөкөй. Колдонмого аны толугу менен калыбына келтирбестен жаңы функцияларды кошкуңуз келсе, бул функция пайдалуу болот.
- Ыкчам колдонмо жаңыртуулары: React Native тиркемелерди өркүндөтүү процессин жөнөкөйлөтүп, ар бир колдонмонун өзүнүн куруу процессине ээ болуу талабын алып салды. Эфир жаңыртуулары (OTA) React Native иштеп чыгуучулары жана колдонмо керектөөчүлөрү үчүн колдонмолорун жаңыртуу үчүн тезирээк, жөнөкөй жана ыңгайлуураак жолу. Программа иштеп жатса да, бул жол менен жаңыртууларды жеткире алат. Жаңыртуу функциялары, экинчи жагынан, колдонмо кийинки жолу ишке киргизилгенде жеткиликтүү болот. Жөнөкөй сөз менен айтканда, колдонмо колдонуучулары мындан ары колдонмолор дүкөнү аркылуу колдонмолорун жаңыртуунун кереги жок.
React Native Чектөөлөр
- Азырынча өнүгүү баскычында: Натыйжада, ал боюнча дагы көп жол бар кантала оңдоп-түзөө, түпнуска компоненттерди которуу жана аткарууну жакшыртуу. React Native'тин жетилгендигинин жетишсиздиги келишимди бузуучу болбосо да, анын потенциалын чектейт. Платформа тынымсыз өркүндөтүлүп жатканын унутпаңыз, андыктан сиз React Nativeди үзгүлтүксүз жаңыртып турушуңуз керек. Натыйжада, бул колдонмону тейлөө үчүн идеалдуу узак мөөнөттүү чечим боло албайт.
- Эне тилине жараша: React Nativeде жок функцияларды куруу үчүн иштеп чыгуучулар дагы эле жергиликтүү модулдарды жазышы керек. Жергиликтүү модулдар жергиликтүү код менен React Native кодунун ортосунда көпүрө катары иштейт. Натыйжада, React Native колдонмосунда колдонмону иштеп чыгууда, сиз дагы эле жергиликтүү коддоону үйрөнүшүңүз керек. Болбосо, сизге жергиликтүү иштеп чыгуучунун жардамы керек болот.
- Эркин терилген тил: React Native популярдуу JavaScriptти колдонуусу пайдалуу болгону менен, анын кемчилиги бар. JavaScript сүйкүмдүү терилген тил болгондуктан, функцияларда ачык өзгөрмөлөрдү жана аргументтерди колдонууну талап кылбайт. Өзгөрмө, негизинен, каалаган нерсени кармай алат. Бул коопсуздук коркунучу.
- Узак мөөнөттүү милдеттенмелер: Платформанын узак мөөнөттүү колдоосуна байланыштуу тынчсыздануулар коркунуч жаратат. React Native колдонууга даяр чечим же алкак эмес; колдонмону иштеп чыгуу үчүн пайдалуу болушу үчүн үзгүлтүксүз өзгөртүүнү талап кылат. Эгер Facebook React Nativeди колдоону токтотсо, платформада иштеген колдонмолор токтоп калат.
Популярдуу React Native колдонмолору
- Walmart
- Bloomberg
- Skype
- UberEats
- Airbnb
- Microsoft OneDrive
- келишпестиктерге
Эмне Күлүк?
Swift — iOS менен иштеген түзмөктөрдү жана аларды курчап турган экосистеманы иштеп чыгуу үчүн Apple тарабынан иштелип чыккан заманбап, жалпы максаттуу жана көп парадигмалуу программалоо тили.
Бул фантастикалык программалоо тили iOS, watchOS, Mac, tvOS жана башка көптөгөн платформалар үчүн колдонмолорду түзүү үчүн. Бул үйрөнүү үчүн жөнөкөй. Swiftтин программалоо интерфейси интерактивдүү жана жөнөкөй, анткени ал экспрессивдүү жана компакт синтаксистерди колдонот.
Ал иштеп чыгуучуларга заманбап колдонмолорду түзүүдө жардам берүү үчүн ар дайым алдыңкы функцияларды кошуп турат. Swift коддору коопсуздугу менен белгилүү жана алардын программалары өтө ылдам.
Swift артыкчылыктары
- Жогорку коопсуздук/өндүрүш: Свифттин архитектурасы аткарууну жакшыртууга басым жасайт, анткени ал Objective-C- менен атаандашуу үчүн иштелип чыккан. Ал расмий түрдө ишке киргизилген учурда 40% көбүрөөк көрсөткүчкө ээ деп айтылган. Бир нече изилдөөлөр бул дооматты колдойт.
- өлчөмдүүлүк: Swift сизге ар дайым жаңы функцияларды кошуп, муктаждык пайда болгондо проектиңизди оңой өстүрө аларыңызга кепилдик берет.
- Тез өнүгүү: Swift өнүгүү тез, анткени ал жөнөкөй синтаксиси бар экспрессивдүү тил. Objective-C менен салыштырганда, сиз ошол эле максаттарга жетүү үчүн азыраак код жаза аласыз. Автоматтык маалымдамаларды эсептөө (ARC) функциясы программанын эс тутумун колдонууну башкарат жана көзөмөлдөйт. Эстутумга мониторинг жана башкаруу көйгөй болбой калгандыктан, бул иштеп чыгуу убактысынын олуттуу көлөмүн үнөмдөйт. Натыйжада, Swift иштеп чыгуучулары колдонмолорду тезирээк түзө алышат.
- Автоматташтырылган эстутумду башкаруу (ARC): Таштанды чогултуу функциясы платформага Swiftтин эң акыркы версиясында эстутумду автоматтык эсептөө (ARC) функциясы менен кошулган. Ашыкча класс инстанцияларын эс тутумдан алып салуу үчүн, бул функция Java, C# жана Go программаларында ишке ашырылган. ARC функциясы өз максаттарына жеткени менен, CPU жүгүн болжол менен 20% кошту. iOS, экинчи жагынан, эстутумга же CPU ылдамдыгына коркунуч келтирбестен, ARC мүмкүнчүлүгүн бириктирди.
- Ката иштетүү: Swift'тин каталарды башкаруучу жана бекем типтеги системасы коммерциялык долбоорлордогу кыйроолорду азайтуунун маанилүү элементтери болуп саналат. Кыска кайтарым циклинен улам, иштеп чыгуучулар код каталарын аныктоону жана оңдоону оңой табышат. Бул элементтердин баары Swift колдонмолорунун коопсуздугуна салым кошот.
- Кайчылаш платформаны колдоо жана толук стек мүмкүнчүлүктөрү: Swift толук стек мүмкүнчүлүктөрү жана кайчылаш түзмөк колдоосу менен булут платформасына ийгиликтүү өттү. Swift кодду бөлүшүү жана кайра колдонуу сыяктуу өзгөчөлүктөрдөн улам барган сайын күчтүү болуп, иштеп чыгуучулар аны алдыңкы жана арткы өнүгүү үчүн колдонууга мүмкүнчүлүк берет. Иштеп чыгуучулар колдонмолорду тезирээк жана натыйжалуу түзө алышат.
- Эстутумдун минималдуу изи: Свифттин динамикалык китепканалары башынан эле камтылгандыктан, эстутумда кичине изи бар. Китепканалар коддон көз карандысыз болгондуктан, алар зарыл болгондо гана колдонулат. Натыйжада, китепканалар колдонмо долбоорундагы бардык файлдарда жок.
- Үйрөнүү оңой жана ачык булак: Swift платформаны илгерилетүүчү жана аны үйрөнүүнү жөнөкөйлөткөн ачык булактуу коомго ээ. Анын жаңылыгына карабастан, иштеп чыгуучулар интернеттен көптөгөн материалдарды таба алышат.
Swift чектөөлөр
- Чакан жамаат: Тез өсүшүнө карабастан, Swift ачык булак коомчулугу Objective-C сыяктуу чоң да, күчтүү да эмес. Натыйжада, тажрыйбалуу Swift иштеп чыгуучулардын ресурстары дагы эле чектелген. Бул аспект жардамга муктаж болгон жаңы иштеп чыгуучуларга тоскоолдук жаратат.
- Салыштырмалуу жаңы тил: Жазуу учурунда 6 жашта болгонуна карабастан, Swift 1980-жылдары дебют жасаган Objective-Cге салыштырмалуу дагы эле жаш программалоо тили. Свифт али баштапкы стадиясында болгондуктан, жол боюнда тоскоолдуктар болот. Колдонмону иштеп чыгуудагы кыйынчылыктарды жеңүү үчүн көбүрөөк куралдар, китепканалар жана башка ресурстар жакшы орнотулган платформаларда жеткиликтүү.
- Чектелген иштеп чыгуучулар: Свифттин тез өсүшүнө карабастан, башка программалоо тилдерине салыштырмалуу ал дагы эле аз сандагы таланттуу программисттерге ээ. Swift иштеп чыгуучусун табуу кыйын болушу мүмкүн.
- Шайкештик маселелери: Свифттин артка шайкеш келбегендиги олуттуу маселени жаратат. Эң жаңы Swift версиясы эскилери менен иштебейт. Программалоо тилинин мурунку версиясы менен иштелип чыккан долбоорду кийинкиси менен өзгөртүүгө болбойт. Ал эми Свифт бул көйгөйдү Swift 5 версиясы менен жеңгенин айтты.
Популярдуу Swift колдонмолору
- Uber
- жалкоолонуп
- VSCO
- Bitmoji
Эмне Android иштеп чыгуу?
Дүйнө жүзү боюнча көптөгөн мобилдик платформалардын арасында Android операциялык тутуму эң көп орнотулган базага ээ. Дүйнө жүзү боюнча 190дон ашык өлкөдө Android жүздөгөн миллиондогон мобилдик түзмөктөрдү иштетет.
Биринчи жолу, Alliance Android түздү, ал Linux ядросунун жана башка ачык булактуу программалык камсыздоонун өзгөртүлгөн версиясына курулган.
Google демилгени башында каржылаган; андан кийин 2005-жылы ишкананы толугу менен сатып алган. Биринчи Android гаджети 2008-жылдын сентябрында рынокко чыккан.
Кеңири функциялар топтому болгондуктан, Android мобилдик операциялык система бизнесин жетектейт.
Бул колдонуучуга ыңгайлуураак, олуттуу коомчулукка ээ, көбүрөөк ыңгайлаштырууга мүмкүндүк берет жана көптөгөн ишканалар Android менен шайкеш келген түзмөктөрдү чыгарышат.
Натыйжада, рынокто Android мобилдик тиркемелерин иштеп чыгууга суроо-талаптын олуттуу өсүшү байкалууда, ал эми ишканалар керектүү шыктар топтому бар акылдуу иштеп чыгуучуларга муктаж. Башында Android мобилдик операциялык система катары иштелип чыккан.
Бирок, коддук китепканалардын кеңейиши жана анын ар түрдүү домендерди иштеп чыгуучулар арасында жагымдуулугу менен Android планшеттер, тагынуучу шаймандар, приставкалар, акылдуу сыналгылар, ноутбуктар жана башкалар үчүн программалык камсыздоонун абсолюттук топтомуна айланды.
Android өнүктүрүү артыкчылыктары
- Тезирээк жайылтуу: Ишканалар үчүн Android колдонмолору бир нече саатка созулган кыска иштеп чыгуу процессине ээ. Бул рынокко тез арада жаңы концепцияны алып чыгууну каалаган ишканаларга атаандаштык артыкчылык берет. Кыскартылган убакыт-базар (TTM) Android иштеп чыгуунун негизги артыкчылыктарынын бири болуп саналат.
- Төмөн чыгымдар менен жогорку ROI: Android тиркемесин иштеп чыгуунун негизги артыкчылыктарынын бири - Android SDKнын жөнөкөй болушу. Иштеп чыгуучу топтор бул SDKлардын материалдык дизайнын колдонуу менен интерактивдүү колдонмолорду түзө алышат. Бирок, бул өтүнмө таратуу үчүн бир жолку каттоо наркын камтыйт. Андан кийин, кардарлар арзан инвестицияны жана колдонуучунун катышуусун жакшыртып, смартфондорунда продуктуну долбоорлоо жана сыноо үчүн каалаган компьютердик аспапты колдоно алышат. Натыйжада, акыркы колдонуучулар кызыктуу колдонмодон пайда алып, уюм инвестициядан көбүрөөк киреше алат.
- Customization: Android бул ачык булак платформасы, ал иштеп чыгуучулардын командаларына аны каалагандай ыңгайлаштырууга мүмкүндүк берет. Дал ушул себептен Android тиркемелери абдан популярдуу. Андан тышкары, операциялык тутум мультимедиа куралдарына жана учурдагы бизнес процесстериңиздин маалыматтарды башкаруу элементтерине оңой байланыштыра турган ар кандай Android колдонмолорун иштеп чыгууга мүмкүндүк берет. Натыйжада, бизнес талаптарын өзгөртүүгө ылайыкташуу менен, фирмалар көбүрөөк керектөөчү базага жетүү менен утушка ээ болот.
- Оңой ыңгайлаштыруу: Android - бул ийкемдүүлүктүн жогорку даражасы жана жөнөкөй ыңгайлаштыруу тандоосу бар ийкемдүү платформа. Сизге болгону ар кандай функциялары бар инновациялык жана кызыктуу корпоративдик колдонмо. Android – бул жөнөкөйдөн татаалга чейинки ыңгайлаштырууларды камтый турган күчтүү операциялык система. Бул платформа сиздин компанияңыздын муктаждыктарын натыйжалуу аткара алат.
- Баары Google: Көптөгөн Google кызматтары iOS'то жеткиликтүү болгону менен, чыныгы интеграция дагы деле жок. Компанияңыз үчүн ыңгайлаштырылган Android колдонмосу менен колдонмоңуздун колдонуучуларына Google колдонмолорунун жана кызматтарынын артыкчылыктарын бере аласыз. Андан тышкары, Google жаңы кызматты же колдонмону ишке киргизсе, ал Android колдонмоңузда кемчиликсиз иштейт.
Android өнүктүрүүгө чектөөлөр
- Фрагментация: Башкаруу үчүн бир нече түзмөктөр бар, алардын ар бири өзүнчө чечим жана экран өлчөмү менен. Бул колдонмо дизайнын жана UI иштеп чыгууну бир топ кыйындатат. Android иштеп чыгуу топтору эгер алар бир нече түзмөктөрдө кемчиликсиз иштеген, жооп берүүчү колдонмо дизайнын сунуштагысы келсе, ошону эске алышы керек, ошондой эле жаңы функцияларды киргизүү эффектин изилдеп чыгышы керек, анткени түзмөктүн бузулушу кардарларга колдонмону күтүлгөндөй иштетүүгө тыюу салышы мүмкүн. Ушундан улам Play Store'до сапатсыз колдонмолор көп.
- Cost: Бул платформа менен фрагментациядан жана көп сандагы тестирлөөдөн улам куруу кымбатыраак болушу мүмкүн. Бирок, бул колдонмонун татаалдыгына көз каранды.
- Testing: Android түзмөктөрүнүн жана версияларынын ар түрдүүлүгүнөн улам, QA адистери бардык моделдердеги колдонмолорду адекваттуу сынап көрүү үчүн кошумча убакыт бөлүшү керек.
- Коопсуздукка байланыштуу тынчсыздануулар: Android'дин ачык булактуу аспектиси иштеп чыгуучулар үчүн жакшылык болсо да, ал азаптуу да болушу мүмкүн. Вирустар жана чабуулдар миллиондогон Android колдонуучуларына жума сайын коркунуч жаратса, Google коопсуздукту өз убагында жаңыртып турат. Тилекке каршы, көпчүлүк адамдар телефондорун такай жаңыртышпайт. Бул колдонмону иштеп чыгуучулар татаал шифрлөө, кошумча коопсуздук механизмдерин киргизүү же жеке маалыматтарды толугу менен киргизүүдөн качуу аркылуу колдонуучу маалыматтарына өздөрү кам көрүшү керек дегенди билдирет.
жыйынтыктоо
React Native, Swift жана Android мобилдик тиркемелерди иштеп чыгуу үчүн эң сонун. Бирок, сиздин долбоордун мүнөзүнө жараша, сиз бири-биринен артык көрө аласыз.
React Native:
- Чакан команда жана Android жана iOS колдонмолорун иштеп чыгуу үчүн чектелген бюджет.
- Бардык платформаларда бирдей көрүнүшү керек болгон колдонмо.
- Тез иштеп чыгуу үчүн ысык кайра жүктөө функциясын колдонуш керек.
Swift төмөнкү сценарийлер үчүн көбүрөөк ылайыктуу:
- iOS үчүн гана колдонмо иштеп чыгуу долбоору.
- Колдонмонун узак мөөнөттүү тейлөөсүн карап чыгуу.
- Платформага тиешелүү коддун олуттуу санын талап кылган колдонмо долбоору.
- Атайын максаттар үчүн колдонмолор, мисалы, эс тутумдун изин башкаруу.
Эгер сиз көз карандысыздыкты, ачыктыкты жана көбүрөөк эркиндикти жактырсаңыз, Android да эң жакшы вариант, жок дегенде башында.
Эгер баары ишке ашпай калса, платформалар аралык ыкманы колдонуп көрүңүз.
Таштап Жооп