02 августа 2016

Мой старый друг "ApplicationVerificationFailed"


Привет, я! Если ты перечитываешь это сообщение, то значит тебя снова замучила эта ошибка. Скажу как есть - на данный момент я тоже пытаюсь ее побороть. Я только в начале пути, и буду делать заметки по ходу действий. Первое, что я помню, это то, что такая ошибка меня уже доканывала... и не раз. Я доходил до дикой злости в поисках ее решения. Сегодня я намерен разузнать всё о ней, справиться и сделать это в виде дневника. Договорились? Ну ок, тогда поехали...
Будем последовательными.
1. Надо глянуть, валидный ли еще сертификат. Заходим сюда и смотрим.
Только что сделал - сертификат действительно был просрочен. Купил, продлил - не помогло. Сто долларов на ветер.




2. Проверяем версию Adobe AIR. Вроде что-то бывает с 20ой.
Проверил на разных - всё равно та же ошибка. (16, 17, 19)


3. Проверяем всякие компиляторы, способы упаковки и так далее.
Думается, это не влияет, но я всё-таки перепробовал почти все комбинации (остановился на asc2.0 + improved packaging engine) - не помогло. ApplicationVerificationFailed - стойкий фрукт.


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


5. Проверить, что Air SDK последней версии. Заходим сюда. Смотрим, что там, качаем.
Взял Flex 4.6, скачал Air 22, замёржил, указал для компиляции. Ошибка namespace, видимо надо будет xml править. Да, так и есть, нужно изменить xmlns на другую версию Air. Всё сделал, ошибки с namespace нет, но ApplicationVerificationFailed осталась.


6. Пробую другой девайс. Он тоже должен быть в provision-файле указан.
Попробовал. Ошибка осталась.


7. Попробовать что-нибудь сломать вокруг - стул, окно, руку. Без разницы, главное - выплеснуть энергию.
Не стал пробовать. Сегодня не до этого, да и с предыдущего раза рука еще болит.


8. Попробовать заливать не из FDT, а через iFunBox, например.
Попробовал. Ошибка e8008016. Погуглил - это как раз проблема с подписью приложения. Ну, то есть Application verification failed, товарищи :) Кто бы сомневался.




9. Проверить get-task-allow = false. Вот тут говорят, что вроде как надо бы get-task-allow в false установить внутри mobileprovision-файле. Жуть, конечно, в него лезть, но надо попробовать.
Сделал (пришлось расширение туда-сюда менять), но потом понял, что в моем xml-файле тоже такая строка есть, так что она перекрывает данные mobileprovision-файла. В любом случае - не помогло. ApplicationVerificationFailed остался невредимым :)


10. Я докатился до способа блондинки - а не перезагрузить ли FDT? Мало ли поможет? Наверняка его делали не меньшие рукожопы, чем я.
Перегрузил, запустил, скомпилил - ошибка на месте. Думаю, ошибка, когда я от тебя избавлюсь, то буду скучать... такие дела. Шучу, конечно, я буду прыгать от счастья, а не скучать! Ошибка, неужели ты поверила, что буду скучать? Да, знаю, ты умнее меня, а, значит, притаившись, сидишь и с сожалением смотришь на меня.


11. Что-то я устал... пойду поем.
Поел, помолился. Теперь снова за дело. Запустил - ошибка осталась. Даже Боги здесь бессильны.


12. Давай-ка удалим старый сертификат и сгенерим новый. Соответственно, текущий provision тоже попадет корзину. За дело.
Сделал, убил ВСЕ provision-файлы (кильнул сертификат - и они тут же перестали быть валидными). Даже для релизных проектов. Получается, их теперь не собрать. Но, я еще не сказал главного - ошибка осталась :)


13. Что-то в голову ударило, что App ID с тремя точками может по какой-то причине не пройти. Имею ввиду, что раньше было com.games.lampogolovii.EnergyBayGame, теперь хочу изменить на com.games.EnergyBayGame. Поехали!
Удалил старый App ID и mobileprovision к нему. Создал новый, с двумя точками. Ошибка осталась.


14. Давай попробуем залить не через Run/Debug, а через релизный Export. Это в Project -> Properties -> iOS -> Deploy.
Сделал, собрал, отправил через iFunBox. Уже знакомая e8008016 ошибка. Такие дела...


15. Изменил App ID внутри xml. Забил левую ерунду. Знаете что? Правильно - ApplicationVerificationFailed. Выходит, может реально дело только в id? Я бы был рад... а вот ошибка - нет.


16. Думаю, шаманы крайнего севера не доверили бы мне даже самого простого бубна. Ибо мои танцы плохи и никак не могут увенчаться успехом.


17. Попросил лучшего друга сделать для меня сертификат и провижн. Посмотрим, повлияет ли это. Проверка кармы, товарищи.
Тупо сижу и жду, ибо пока нет идей что бы еще поделать - вроде перепробовал всё, что знал. Ура, я получил файлы! Итак, момент истины... и... "Как там?" - спросите вы... а я скажу - ApplicationVerificationFailed, жирным шрифтом в пол-экрана :) Умный ход, Адоби, ведь так можно поубивать программистов - ибо я готов уже сигануть из окна.



18. Давай-ка уберем ane. Мало ли?!
Убрал Extensions... все - там и милкмана парочка, и еще что-то. На ошибку не повлияло.


19. А может вообще чистое приложение создать, а?
Готово, сейчас попробую залить. Чума! Ошибка на месте. Чистое приложение, ничего не трогал, кроме xml. Я вообще не сквернословлю, но вот сейчас очень захотелось! Что происходит-то вообще?


20. Думаю на сегодня хватит. Четыре часа непрерывных самоистезаний.
Какой-то прикол. Чистое приложение с моим сертификатом заинсталлилось. Думаю, ошибка - это нечто глобальное. Как только я хотел перестать о ней думать и запустить следующую серию "В поле зрения" - как она сразу поманила меня остаться, не переставать думать, а пробовать дальше. Может быть это глупо, но я последую за этой нашептывающей сиреной.


21. Пробуем дальше, вроде решение очень близко.
Залил xml от чистого приложения - к себе. И да- оно заинсталлилось и работает. Сейчас буду diff смотреть. Араксис, приди на помощь! Diff ничего не дал, чего бы я не знал. Правлю рабочий xml, добавляя то, что мне нужно. Изменил aspectRatio, autoOrients, renderMode - пока все по-прежнему собирается. Добавил иконки - все в порядке. Сделал copy-paste концовки xml-файла - начиная с "android" и до самого конца. Вот и словилась моя ненаглядная! Ошибка где-то здесь. Вернул назад - все работает.


Итак, я из будущего! Что я тебе хочу сказать.
Ты так часто делал сертификаты и провижны - что с этим у тебя уже всё ок. А вот xml - это темный лес, то для ane какую-то строчку нужно написать, то магический переключатель сделать, а то в TestFlight не заливается. В общем - нужно с этим разобраться и покончить с ApplicationVerificationFailed навсегда! А пока - праздновать!



Сообщения, схожие по тематике:

0 коммент.:

Отправить комментарий