Қосымша дайын, дизайн бекітілген, тестілеу өткен, және сіз құрастырманы App Store-ға жібересіз. Бір-екі күн өтеді де, поштаға «Your app has been rejected» деген хат келеді. Тапсырыс берушіге бұл жағымсыз тосын сый, ал команда үшін - қосымша жұмыс және іске қосу мерзімінің ығысуы, ол кейде төленіп қойған жарнамамен немесе анонспен сәйкес келеді. Жақсы жаңалық: бас тартудың себептері көп жағдайда үлгілі, болжауға болатын және жойылатын, яғни оларды алдын ала жабуға болады.
Бұл мақалада Apple қосымшаларды қабылдамайтын ең жиі себептерді талдаймыз, хаттағы тұжырымдардың артында шын мәнінде не тұрғанын, бас тартудан кейін қалай әрекет ету керегін және тексеруден бірінші реттен өту үшін жіберер алдында нені тексеру керегін түсіндіреміз. Қазақстандағы жобалар үшін маңызды ерекшеліктерге - төлемге, логиндерге және тексерушілерге арналған сипаттамаға - бөлек тоқталамыз.
Маңызды ескерту: Apple App Review Guidelines ережелерін жиі жаңартып тұрады, нақты талаптар уақыт өте келе өзгереді. Сондықтан жариялауға дайындалғанда әрқашан Apple әзірлеушілер сайтындағы нұсқаулықтың өзекті нұсқасымен салыстырыңыз.
Тексеру қалай жұмыс істейді және бас тарту неге қалыпты жағдай
Әрбір қосымша жарияланар алдында App Review тексеруінен өтеді: Apple қызметкерлері, ал кей жағдайда автоматты құралдар да, құрастырманы нақты құрылғыларға орнатады, негізгі сценарийлерді өтеді және қосымшаны дүкен ережелерімен салыстырады. Тексеруші сіздің өніміңізді білмейді, нюанстарға үңілуге уақыты жоқ, сондықтан өзін зейінді, бірақ шыдамсыз жаңа пайдаланушыдай ұстайды: бірдеңе ашылмаса, түсініксіз болса немесе ережеге қайшы келсе, ол құрастырманы қабылдамайды және бұзылған нұсқаулық тармағын атайды.
Бас тарту - үкім де емес, сіздің жұмысыңыздың сапасына баға да емес. Бұл процестің қалыпты бөлігі, әсіресе бірінші нұсқа үшін. Қабылданбаған қосымшалар үлесі туралы деректер түрлі шолуларда әртүрлі: көздер алғашқы жіберулердің төрттен бірінен бастап үштен біршама көбіне дейінгі сандарды атайды, сондықтан бірыңғай сенімді шама жоқ. Маңыздысы басқа: Apple ашықтық есептеріне сүйенетін шолулар бойынша, қосымшаларды көбіне жұмысқа қабілеттілік пен толықтық мәселелері (нұсқаулықтың 2.1 тармағы), одан кейін жеке құпиялылық пен заңды талаптар үшін қабылдамайды. Яғни ең жиі себептер - экзотикалық бұзушылықтар емес, жіберер алдында табуға және түзетуге болатын кәдімгі кемшіліктер.
Қосымша тұрақсыз немесе аяқталмаған
Бас тартудың ең көп таралған себебі - қосымша тексеру сәтінде керек жұмыс істемейді. Бұл іске қосылғанда немесе негізгі сценарийлерде құлау, бұзылған сілтемелер, бос экрандар, ештеңе істемейтін батырмалар және «Lorem ipsum» не тест мәтіні сияқты қалдырылған толтырғыштар. Apple дүкенге жобаны емес, аяқталған өнімнің түсуін күтеді, ал тексеруші аяқталмағандықтың алғашқы белгісінде-ақ құрастырманы қабылдамайды.
Бұдан аулақ болу үшін қосымшаны тексеруші сынайтындай сынаңыз: нақты құрылғыларда, iOS-тың әртүрлі нұсқаларында және экран өлшемдерінде, қолдаса iPad-ты қоса, және интернеттің әртүрлі сапасында. Барлық толтырғыштар мен уақытша контентті алып тастаңыз, әрбір сілтеме мен әрбір батырманы тексеріңіз. Серверге тәуелді функциялар әсіресе қауіпті: тексеру сәтінде сынақ серверіңіз қолжетімсіз болса немесе баяу жауап берсе, қосымша бұзылған болып көрінеді. Сервер бөлігінің тұрақты жұмыс істеп тұрғанына және тексеру кезінде қызмет көрсету үшін өшірілмейтініне көз жеткізіңіз.
Тексерушіге арналған демо-қолжетімділік жоқ
Жеке кабинеті бар қосымшалар үшін типтік қате: тексеруші кіру экранын ашады, ал кіретін ештеңесі жоқ. Ол сіздің клиенттеріңізді білмейді және тіркелу Қазақстан нөміріне SMS растауын немесе менеджердің бекітуін талап етсе, тіркеле алмайды. Нәтижесінде ол негізгі функционалды көрмейді және қосымшаны тексеру мүмкін емес деп құрастырманы қабылдамайды.
Шешім қарапайым, бірақ ол туралы жиі ұмытады: жұмыс істейтін демо-аккаунт дайындап, оның деректерін App Store Connect-тегі тексерушіге арналған ескертпелер өрісіне көрсетіңіз. Аккаунттың белсенді екеніне, тест деректері бар екеніне және сервер басқа елден кіруді бұғаттамайтынына көз жеткізіңіз, өйткені қосымшаны Қазақстанда тексермейді. Кейбір функциялар ерекше жағдайларды, мысалы төлемді, жабдықты немесе орналасқан жерді талап етсе, ескертпелерде тексерушіге бұл функцияларды қалай көру керегін түсіндіріңіз немесе демонстрациялық бейне беріңіз. Қосымшаның не істейтінін және оны қалай тексеру керегін неғұрлым анық сипаттасаңыз, сұрақтар соғұрлым аз туындайды.
Қосымша тым қарапайым: сайттың «қабығы»
Apple терезеде ашылған сайттан, бір статикалық беттен немесе өз құндылығы жоқ құжаттан тұратын қосымшаларды ұнатпайды. Минималды функционалдылық ережесі (4.2 тармақ) қосымшаның пайдаланушыға браузерде сайтты жай ашу арқылы алуға болмайтын бірдеңе беруін талап етеді. Егер сіздің қосымшаңыз - нативті мүмкіндіктері жоқ қабықтағы веб-нұсқа болса, ол тексеруден өтпеуі мүмкін.
Егер сізде сайт бар және оны қосымшаға айналдырғыңыз келсе, мобильді формат қандай қосымша құндылық беретінін ойластырыңыз: push-хабарламалар, камерамен немесе геолокациямен жұмыс, офлайн қолжетімділік, жеке кабинет, құрылғы функцияларымен интеграция, телефонға арнайы жасалған ыңғайлы навигация. Егер мұның ешқайсысы қажет болмаса, бөлек мақалада жазған PWA сізге жетуі мүмкін, ал дүкенде жариялауға төлеудің мәні жоқ.
Жеке құпиялылық және дербес деректер
Жеке құпиялылық мәселелері - бас тартудың жиілігі бойынша екінші себеп, және мұнда Apple талаптары қатаң. Қосымша қандай да бір деректер жинаса, App Store Connect-те шынымен ашылатын және қандай деректердің жиналатынын, не үшін және қалай пайдаланылатынын сипаттайтын құпиялылық саясатына сілтеме болуы керек. Толтырылған құпиялылық «жапсырмалары» (қосымша қандай деректер жинайтынының сипаттамасы) шындыққа сәйкес болуы тиіс: тексеруші мен автоматты тексерулер декларацияны қосымшаның нақты әрекетімен салыстырады.
Қосымша сұрайтын әрбір рұқсат - камераға, геолокацияға, контактілерге, фотоға, хабарламаларға қолжетімділік - оның не үшін қажет екенінің түсінікті түсіндірмесімен бірге жүруі керек. «Қосымшаға қолжетімділік қажет» сияқты бұлыңғыр тұжырымдар бас тартуға әкеледі. Тек функцияның жұмысына шынымен қажетін ғана және ол қажет болған сәтте сұраңыз, іске қосылғанда барлығын бірден емес. Пайдаланушы деректерін саясатта айтылмаған үшінші тарап сервистеріне бермеңіз. Егер қосымша Қазақстан азаматтарының деректерімен жұмыс істесе, бөлек мақалада жазған дербес деректер туралы жергілікті заңнама талаптарын да ескеріңіз.
Төлемдер және кіріктірілген сатып алулар
Төлем ережелері көптеген бас тартудың көзі, өйткені олар әрдайым айқын емес. Apple-дың жалпы ережесі: егер қосымша ішінде цифрлық тауарлар мен қызметтерді - жазылымдарды, контентке қолжетімділікті, виртуалды бонустарды, қосымша функцияларды - сатсаңыз, өз төлем жүйеңізді немесе төлем үшін сайтқа бағыттауды емес, Apple кіріктірілген сатып алуларын (In-App Purchase, 3.1.1 тармақ) пайдалануға міндеттісіз.
Бұл ретте қосымшадан тыс көрсетілетін физикалық тауарлар мен қызметтерге басқа ереже қолданылады. Егер қосымшаңыз киім, тамақ, жеткізу немесе такси тапсырысын сатса, төлемді үшінші тарап төлем тәсілдері арқылы қабылдауға болады: Kaspi Pay, банк карталары және басқалар. Дәл осы интернет-дүкендер, жеткізу және такси сияқты қазақстандық қосымшалардың типтік бизнесін мүмкін етеді. Қате шекарада туындайды: қосымша «курсқа қолжетімділікті» немесе «премиум-жазылымды» сыртқы төлеммен сатады, ал тексеруші мұны кіріктірілген сатып алуларды айналып өту деп бағалайды. Нақты не сататыныңызды алдын ала анықтаңыз және оған жарамды төлем түрін таңдаңыз. Онлайн-төлем ерекшеліктері туралы Kaspi Pay және басқа төлем жүйелері туралы мақалада егжей-тегжейлі жаздық.
Аккаунттар арқылы кіру және аккаунтты жою
Тіркелу мен кіруге екі топ талап қатысты. Біріншісі: қосымша пайдаланушыға аккаунт жасауға мүмкіндік берсе, онда осы аккаунтты және онымен байланысты деректерді поштаға жазбай немесе қолдау қызметіне қоңырау шалмай, тікелей қосымшаның өзінен жою мүмкіндігі болуы керек. Көптеген командалар бұл талапты жіберіп алады, және қосымша бірінші жіберілгеннің өзінде қабылданбайды. Жоюды алдын ала, серверде деректерді сақтау және жою логикасымен бірге іске асыру керек.
Екінші топ үшінші тарап сервистері арқылы кірумен байланысты. Қосымша Google, Facebook немесе басқа сыртқы аккаунттар арқылы кіруді ұсынса, Apple жеке құпиялылықты қорғайтын балама кіру нұсқасын, мысалы «Apple арқылы кіруді» де ұсынуды талап етеді. Бұл талаптың шарттарын Apple нақтылап тұрады, сондықтан нұсқаулықтағы өзекті тұжырымды тексеріңіз. Ең қарапайым шешім - сыртқы аккаунттармен интеграция жоспарланбаса, телефон нөмірі немесе e-mail арқылы кіруді ұсыну.
Сұрақ қойыңыз немесе өтінім қалдырыңыз
Құрастырманы App Review талаптары бойынша тексереміз, демо-қолжетімділікті, құпиялылық саясатын және App Store-дағы карточканы дайындаймыз, сонда тексеруден бірінші реттен өтесіз.
Форманы жіберу арқылы дербес деректерді өңдеуге келісім бересіз.
Метадеректер: сипаттама, скриншоттар, белгіше
Дүкендегі қосымша карточкасы да тексеріледі. Сипаттама, скриншоттар мен белгіше қосымшаның не істейтінін дәл көрсетуі керек. Скриншоттар жоқ функцияларды көрсетпеуі немесе адастырмауы тиіс, ал сипаттамада басқа платформалар туралы айтылмауы, бәсекелестерге сілтемелер және «әлемдегі ең жақсы қосымша» сияқты тексерілмейтін мәлімдемелер болмауы керек. Скриншоттардың өлшемі мен форматын барлық қолдау көрсетілетін құрылғыларға дайындау қажет.
Атау мен белгіше біреудің брендін көшірмеуі немесе біреудің сауда белгілерін құқықсыз пайдаланбауы керек: ережелердің соңғы шолулары бойынша, Apple қосымшаның атауында немесе белгішесінде басқа әзірлеушінің брендін пайдаланбауына қатысты талаптарды күшейтті. Карточкада тест немесе жазылып бітпеген мәтінді қалдырмаңыз, ал қосымша жұмыс істеу үшін ерекше жағдайларды, мысалы нақты жабдықты талап етсе, оны көрсетіңіз. Жариялау материалдарын дайындаудың толық талдауы App Store және Google Play үшін біздің чек-парағымызда бар.
Пайдаланушылар жасаған контент
Қосымшада пайдаланушылар контент - пікірлер, фото, шолулар, хабарламалар - жариялай алса, Apple модерация құралдарын талап етеді. Контентке шағымдану тәсілі, басқа пайдаланушыны бұғаттау мүмкіндігі, жол берілмейтін мазмұнды сүзу және түсінікті пайдалану шарттары қажет. Мұндай тетіктері жоқ қосымшаны қабылдамайды, өйткені ол қалаусыз контент алаңына айналуы мүмкін.
Бұл тек әлеуметтік желілерге ғана емес, маркетплейстерге, чаттарға, форумдарға және шолулары бар платформаларға да қатысты. Егер сіз маркетплейс немесе шолулары бар такси қосымшасы сияқты платформа жасасаңыз, модерацияны жобалау кезеңінде қарастырыңыз, бұл туралы маркетплейс пен такси туралы мақалаларда егжей-тегжейлі жаздық. Шағымдарға жауап беру мерзімін және өтініштерге арналған байланысты да алдын ала ойластырған жөн.
Көшірмелер, үлгі және ұқсас қосымшалар
Apple басқаларды көшіретін қосымшаларды және «спам» деп аталатынды қабылдамайды: бір әзірлеушінің бір үлгіден жиналған, әртүрлі атаулы бірдей дерлік көптеген қосымшасы. Егер сіз бірнеше клиентке ортақ үлгі негізінде қосымшалар жасасаңыз, мұны ескеріңіз: әрбір қосымшаның жеке құндылығы, бірегей контенті және өз бренді болуы керек, жай логотипті ауыстыру емес.
Студиялар үшін бұл маңызды тәуекел. Егер бір әзірлеуші аккаунтынан көптеген ұқсас қосымшаны жарияласаңыз, тексеруші оларды спам деп санауы мүмкін. Шешім - әр клиент үшін оның компаниясына жеке әзірлеуші аккаунтын ашу, мұны басқа себептермен де ұсынамыз: сонда клиент өз өнімін бақылауда ұстайды, ал бір қосымшаның бұғатталу қаупі қалғандарына әсер етпейді.
ЖИ және үшінші тарап сервистері
Қосымшада жасанды интеллекттің сыртқы сервистері, жарнамалық және аналитикалық кітапханалар пайдаланылса, бұл құпиялылық декларациясында көрсетілуі керек. Ережелер жаңартуларының шолулары бойынша, 2025 жылдың соңынан бастап Apple дербес деректерді сыртқы ЖИ сервистеріне беретін қосымшалардың пайдаланушыға қандай провайдерге және қандай деректер берілетінін анық хабарлауын және мұндай беруге дейін келісім алуын талап етеді. Егер сіз бизнеске арналған ЖИ чат-боттар туралы мақаладағыдай чат-бот немесе басқа ЖИ функцияларын кіріктірсеңіз, осындай хабарламаны қарастырыңыз.
Бұл кез келген үшінші тарап SDK-ларына да қатысты: қосылған әрбір кітапхана деректер жинауы мүмкін, ал ережелерге сәйкестікке әзірлеуші ретінде өзіңіз жауап бересіз. Жариялар алдында барлық қосылған сервистердің тізімін құрып, олардың құпиялылық саясатында және құпиялылық декларациясында көрсетілгеніне көз жеткізіңіз.
Бас тарту келсе не істеу керек
Ең алдымен үрейленбеңіз және App Store Connect-тегі Resolution Center-дегі хабарламаны мұқият оқыңыз. Онда нұсқаулық тармағының нөмірі мен бұзушылықтың сипаттамасы, кейде скриншоттар көрсетіледі. Себеп жиі алғашқы көрінгеннен қарапайым болып шығады: демо-аккаунт, рұқсатқа түсініктеме немесе құпиялылық саясатына сілтеме қажет.
Ескертумен келіссеңіз, мәселені түзетіп, жаңа құрастырма жіберіңіз, қажет болса Resolution Center-де тексерушіге нақты не өзгергенін түсіндіріп жауап беріңіз. Бас тартуды қате деп санасаңыз, тыныш және фактілермен, ережелердің нақты тармақтарына сілтеме жасап, эмоциясыз жауап беріңіз, ал қажет болса қосымшаларды қарау кеңесіне апелляция беруге болады. Күрделі жағдайларда Apple әзірлеушілерді қолдау қызметіне жүгінуге болады. Себепті жүйелі түзету маңызды: ұқсас бұзушылықтар үшін бірнеше рет қабылданбаған қосымша кейінгі жіберулерде неғұрлым мұқият тексерілуі мүмкін.
Қазақстандағы жобалардың ерекшеліктері
Қазақстандық қосымшалар үшін бірнеше типтік қауіп нүктесі бар. Тексеруші Қазақстанда емес, сондықтан жергілікті жағдайларға байланған барлық нәрсе түсіндірілуі керек: Қазақстан нөмірлеріне SMS, нақты қалаға байлану, геолокация, Kaspi Pay төлемі. Жергілікті нөмірсіз және орналасусыз жұмыс істейтін демо-қолжетімділік дайындаңыз немесе ескертпелерде функцияларды қалай тексеру керегін егжей-тегжейлі сипаттаңыз.
Тілдерді ойластырыңыз: қазақ және орыс тіліндегі интерфейс аударылмаған үзінділерсіз және бұзылған беттеусіз толық жасалуы керек. Карточкадағы метадеректерді де қателерге тексерген жөн, әсіресе бірнеше локализацияны толтырсаңыз. Ақырында, сататыныңызға қарай төлем түрін алдын ала анықтаңыз: цифрлық жазылымдар Apple кіріктірілген сатып алулары арқылы өтеді, ал жеткізу немесе такси сияқты физикалық тауарлар мен қызметтерді сыртқы тәсілдермен төлеуге болады. Идеядан релизге дейінгі жалпы жол мобильді қосымшаны әзірлеу кезеңдері туралы мақаламызда сипатталған, ал жасау тәсілін әлі таңдап жатсаңыз, қосымшаны тегін жасау туралы материалды қараңыз.
Жібергенге дейінгі чек-тізім
- Қосымша нақты құрылғыларда және iOS нұсқаларында тексерілген, құлаулар мен бұзылған сілтемелер жоқ
- Толтырғыштар, тест мәтіндері және аяқталмаған экрандар алынып тасталған
- Сервер бөлігі тұрақты және тексеру уақытында қолжетімді болады
- Жұмыс істейтін демо-аккаунт дайындалған, деректері тексерушіге арналған ескертпелерде көрсетілген
- Ерекше функциялар (төлем, жабдық, орналасу) үшін түсініктеме немесе бейне бар
- Қосымша жай сайттан артық құндылық береді, тек веб-бетті ашып қоймайды
- Құпиялылық саясаты сілтеме бойынша қолжетімді және деректердің нақты жиналуына сәйкес
- Құпиялылық декларациясы дұрыс толтырылған, барлық үшінші тарап SDK-лары мен ЖИ сервистері ескерілген
- Сұралатын әрбір рұқсатқа түсінікті түсіндірме берілген
- Төлем түрі сатылатынға сәйкес: цифрлық - кіріктірілген сатып алулар арқылы, физикалық - рұқсат етілген тәсілдермен
- Тіркелу болса, қосымшадан аккаунтты жою іске асырылған
- Сыртқы аккаунттар арқылы кіру болса, баламалы нұсқа қарастырылған
- Пайдаланушы контенті үшін шағым, бұғаттау және модерация бар
- Скриншоттар, сипаттама, атау және белгіше дәл және біреудің құқығын бұзбайды
- Жіберер алдында App Review Guidelines нұсқаулығының өзекті нұсқасымен салыстырылған