Перейти к содержанию
  • Регистрация
  • 0
Alex7wrt

Подключение Admob к iOS

Вопрос

Здравствуйте.

Нужен совет по интеграции баннера Admob к iOS приложению. Может быть кто-нибудь уже делал подобное?

Насколько я начитался в инете по похожим запросам, нужно скачать GoogleMobileAds.framework и подключить его в Project-Options-Linking-Options passed to the LD Linker. Кроме этого фреймверка еще нужны такие:

  • EventKit 
  • EventKitUI 
  • AVFoundation 
  • AdSupport 
  • AudioToolbox 
  • AVFoundation 
  • CoreGraphics 
  • CoreTelephony 
  • CoreMedia 
  • MessageUI 
  • StoreKit 
  • SystemConfiguration

Которые подгрузил в SDK Manager. 

Далее в  “Options passed to the LD linker” добавляю:

-ObjC -LC:\Users\<user>\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.3.sdk\usr\lib Frameworks\GoogleMobileAds.framework\GoogleMobileAds Frameworks\AdSupport.framework\AdSupport Frameworks\AudioToolbox.framework\AudioToolbox Frameworks\AVFoundation.framework\AVFoundation Frameworks\CoreGraphics.framework\CoreGraphics Frameworks\CoreMedia.framework\CoreMedia Frameworks\CoreTelephony.framework\CoreTelephony Frameworks\EventKit.framework\EventKit Frameworks\EventKitUI.framework\EventKitUI Frameworks\MessageUI.framework\MessageUI Frameworks\StoreKit.framework\StoreKit Frameworks\SystemConfiguration.framework\SystemConfiguration -lxml2.2

После этого во время компиляции возникает ошибка в фреймворке GoogleMobileAds.framework. 

Все остальные фреймворки ошибок не вызывают.

Текст ошибки: 

[DCC Error] E2597 NYI lto::archName

ld: file was built for unsupported file format ( 0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x73 0x2F 0x43 0x75 0x72 0x72 0x65 0x6E 0x74 ) which is not the architecture being linked (arm64):

Это для версии iOS Device 64 bit. Для 32 бит ошибка та же, только в конце вместо arm64 написано armv7.

Символы 0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x73 0x2F 0x43 0x75 0x72 0x72 0x65 0x6E 0x74 в переводе на ACSII значат "Versions/Current" - это часть строки в файле GoogleMobileAds.

Вот и не пойму как эту ошибку обойти.

Изменено пользователем Alex7wrt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

В смысле iAD Apple отключили что ли для новых приложений? Или только для Embarcadero разработчиков? 

Я что-то не найду нигде такой инфы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
  • 0

Наверно, вряд ли кто-то интегрировал AdMob в iOS, тогда интересует как правильно подключать iOS фреймворки и потом добавлять их в uses.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
В 23.02.2017 в 13:04, Alex7wrt сказал:

Наверно, вряд ли кто-то интегрировал AdMob в iOS, тогда интересует как правильно подключать iOS фреймворки и потом добавлять их в uses.

Получилось у вас запустить AdMob в iOS? Сейчас в Rio пробую, без подключения дополнительных фреймворков, но объявление пустое всегда и ошибка "Не удалось завершить операцию. Запас рекламных объявлений исчерпан". Пробовал и в testmode и без него. В admob приложение и банер добавлены более суток назад.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Получилось, но только с подключением дополнительных фреймворков. Использовал JVEsuite.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
26 минут назад, Alex7wrt сказал:

Получилось, но только с подключением дополнительных фреймворков. Использовал JVEsuite.

Спасибо за ответ!

Ads Support only pack for $70.00 ? Жаба конечно душит, но думаю окупится. 

Какие то подводные камни обнаружились в компоненте или все норм? Почитал их инструкцию по установке (https://www.jvesoft.com/wp/configuring-ios/) нифига не понял, но вроде супер-сложного ничего нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
44 минуты назад, Alex7wrt сказал:

Получилось, но только с подключением дополнительных фреймворков. Использовал JVEsuite.

Хотя наверное куплю у них все за $100, там даже Google Analytics есть, Эмбаркадера это сделает наверное никогда.

Вообще странно что Эмбаркадера кладет на такие важные вещи как монетизация приложений  - сделай пользователей своих продуктов богаче и тебе перепадет больше денег за подписки и прочее. Простая как 3 копейки идея, но маркетологи Эмбы видимо еще не дочитали учебник до этого места.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
1 час назад, Alex7wrt сказал:

Получилось, но только с подключением дополнительных фреймворков. Использовал JVEsuite.

Как и предполагал - я слишком тупой чтоб понять их инструкцию по установке.

  1. Go to Tools -> Options -> SDK Manager à iOS Device, for each iPhoneOS device:
  2. Click on any framework (just a click: there is a bug in IDE).
  3. Click “Add a new path item” image button (top one)
    1. Set “Path on remote machine” to “/System/Library/Frameworks” or “$(SDKROOT)/System/Library/Frameworks” (same as other frameworks).
    2. Set “Framework name” to “SystemConfiguration”.
    3. Click Ok (nothing should be selected in the radio and leave the checkbox unchecked).
  4. Repeat step 3 with Framework name “AdSupport”, “StoreKit”, “Social”, “CoreData”, “CoreTelephony”, “CoreMedia”, “SystemConfiguration”, “Security”, “EventKit”, “EventKitUI”, “AVFoundation”, “iAd”, “AudioToolbox”, “CoreBluetooth”, “SafariServices”, “CoreMotion”, “MediaPlayer”, “MobileCoreServices”, “CoreVideo”, “MessageUI”, “Metal”, “IOSurface”, “ImageIO”, “CoreAudio”, “MediaToolbox”, “CoreMIDI”, “JavaScriptCore”, “ModelIO” (no need to duplicate already existing items: Delphi XE5, for example, already includes StoreKit and iAd).
  5. Click “Update Local File Cache” button.

В эти папки ($(SDKROOT)/System/Library/Frameworks/...) надо что то положить? Где взять все эти фреймворки? Или я туплю?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Я еще тупее чем думал. После нажатия "Update Local File Cache" все фреймворки подсосались сами с Mac mini ))))))))))))))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

При публикации приложения iOS получаю ошибку при использовании JVEsuite :

Цитата

ITMS-90338: Non-public API usage - The app links to non-public libraries in AppName: /System/Library/PrivateFrameworks/IOSurface.framework/IOSurface. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed. If you think this message was sent in error and that you have only used Apple-published APIs in accordance with the guidelines, send the app's Apple ID, along with detailed information about why you believe the above APIs were incorrectly flagged, to appreview@apple.com. For further information, visit the Technical Support Information at http://developer.apple.com/support/technical/

Кто нибудь сталкивался с подобным? Как победить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
В 04.08.2019 в 11:11, Евгений Корепов сказал:

При публикации приложения iOS получаю ошибку при использовании JVEsuite :

Кто нибудь сталкивался с подобным? Как победить?

Ответил мне автор JVEsuite, дай бог ему здоровья!

Цитата

Просто уберите “-weak_framework IOSurface" из Linked Option и попробуйте
загрузить еще раз - должно сработать.


Эпл успешно прожевал приложение и загрузил сборку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От Сергей Сергеев
      Обнаружил глюк, как исправить - не нашел, по вот этому обсуждению на Embe - похоже он с 15 года..
      https://forums.embarcadero.com/thread.jspa?threadID=116534
      Выглядит так, взял из примера WebBrowser, прописал в дизайне адрес, к примеру Яндекс,
      и запускаю на Ифоне 5 - нажимаю Гоу, при клике на любой ссылке ( например на большой надписи Яндекс в центре), вдруг откдуда не возьмись - появляется клава - английская,
       
       
       
      которая Done, ничего никуда не вводит, и не прячется от слова Никак ( с экрана)
      дальше - тапаем в поле ввода поиска, вылазит похоже еще одна, уже похоже ФМХ клава - со словом Готово, которая работает..
      переключается и по готово - прячется.
       
       
       
       
      но после того как Готово спряталась - эта ( от Сафари чтоли ) остается, по Доне не скрывается, и при кликах по ссылкам - прячется и опять вылазит..
       
      сделал то что написано в обсуждении, но это прячется только второй ( Доне)ТулБар - клавы две так и висят..
      Ничего по теме не нашел, похоже глюк старый, и возможно уже решенный..
      пс.  клавиатуры не две все таки, два тул бара, повесил на он хайд, он Шоу обработчики, происходит следующее, по Готово - прячется клава и сразу опять показывается уже без "готово" - с "доне".. она же сразу показывается при клике по ссылке..
       
    • От Сергей Сергеев
      Приветствую всех!
      Сделал приложение для Андроид, делал свой стиль в BSD  - освоил добавление ( копированием ) панелей и чекбоксов со своими картинками.
      В принципе, все получилось, на разным смартфонах работатет - все картинки на месте.
      Но при попытке повторить стиль для Ios обнаружилась проблема, стиль для iPhone 5 ( scale 2) - все ок, но  Iphone 6+ ( scale 3) - все картинки из стиля на панельках и чек боксах берутся со смещением ( примерно 30%).
      Т.е. указана координата левого верхнего угла  в файле скажем 300 по Х, берется 400 . н у итак далее.. натыкался на тексты, что для IOS - разрешение 3х - поддерживают не все стили. Может в этом дело? никто не сталкивался?
      Попутно обнаружил, что при редактировании стиля IOS в BSD - не создаются новые обьекты в файле .style , при этом, при редактировании стиля Андроид - все нормально создается. 
      вав проверил ! и в Андроид перестало сохряняться в style файле! но полгода назад в 10.3 - все работала.. стиль то для андроид я именно так сделал ( примерно в феврале)
      Например:
      в BSD делаю - File - New - New Ios Style

      делаю копию обьекта Panel

      копия создается Panel_copy, в файле vsf - сохраняется, но при сохранении стиля для FMX, ( Save as .style) - обьекта в файле нет, причем как Panel, так и Panel_Copy

       
      если проделать, так же в стиле для Андроид Лайт, то обьект добавляется в конец файла..  ( Уже не делается и для Андроида)
        а здесь нет - последний icon.. и поиском не находится и если загрузить в BookStyle - то стиля Panel_Copy нет.

      про "сьезжающие"  картинке в стиле для Ios 3x - опишу подробнее позже, решение не найдено пока..
       
    • От Евгений Корепов
      Подскажите, реально ли в текущий момент сделать рекламу в iOS приложениях? 
      Документация эмбаркадеры, вроде и современная (http://docwiki.embarcadero.com/RADStudio/Rio/en/Using_the_AdMob_Service в примеру), но пометка внизу страниц "This page was last edited on 28 September 2015, at 15:17." дает понять что они забили на этот раздел документации 4 года назад, и с выходом Rio тупо скопипастили, чтоб было. Издевательство какое то (
       
      P.S. В документации идет речь о iAd, но согласно Apple:
      About the iAd App Network Shutdown : As of December 31, 2016, the iAd App Network is no longer available.
       
       
    • От Паршенко Виктор
      Доброго времени суток.
      Возникла проблема с использование TLocationSensor в Delphi 10.3 Rio под iOS. 
      Открыл, скомпилировал и установил приложение LocationDemo взятое из примеров.
      Device: iPhone 7+, version ios: 12.1.3. 
      При запуске, приложение запросило разрешение на доступ к геолокации (разумеется разрешил)
      Индикатор локации в верхнем баре показал, что его сейчас используют, но само приложение не реагирует на это никак. В частности событие OnChangeLocation не срабатывает у TLocationSensor. 
      Что делал я, чтоб попытаться устранить эту проблему:
      - скомпилировал этот же проект под Android (пример рабочий, Android отреагировал и показал мне местоположение)
      - внес изменения в системные юниты по рабочему примеру : 
      - открывал любые другие приложения, которые используют геолокацию (успешно находит и показывает мое местоположение)
      У меня закончились идеи, почему не работает TLocationSensor на iOS.
      P.S. не проверял компиляцию на версии делфи по ниже (10.2.3, 10.2 ... ). 
      Для красоты эксперимента, есть тут кто на Rio использовал геолокацию для iOS, у вас работает? 
       
    • От void
      Добрый день.
      (Delphi 10.3)
      (XCode 10.1)

      Подключил статический framework на версии SDK 11.2 (macMini)
      как описано в:
      ВСЕ ЗАРАБОТАЛО!
       
       

      После обновления:
      1) macMini к
              XCode 10.1
              SDK 12.1
              PAServer 20.0
      2) windows
              PAServer 20.0
      3) PAServer - конектится
      4) прописал дополнительные SDK  (Delphi -> SDK Manager -> Properties)
      5) Получил SDK 12 на windows (Delphi -> Update Local File Cache)
      6) Пути в Linking изменил для SDK12

      При сборке выдает ОШИБКУ:
      [DCC Error] E2597 Undefined symbols for architecture arm64 (для 32 - armv7):...

      [DCC Fatal Error] F2588 Linker error code: 1 ($00000001)

      Кто нибудь сталкивался с такой ошибкой после обновления?
       
    • От FREEFAR
      Всем доброго времени суток. 
      Казалось бы. Во время разработки и перед тем как подписали приложение сертификатом Distribution, пуши приходили норм. Но после того как прошли аудит Apple пуши куда-то пропали. FCM возвращал ошибку InvalidRegistration.
      Оказалось все достаточно просто. На сервере с которого мы отправляем пуш, В php скрипте, который отправляет пуши надо выставить
      sandbox = false
      Ура! Всем удачи)
    • От Bohdan
      Всем Привет!

      Платформа ios Delphi 10.2.2, хочу при нажатии на label показывать edit (для редактирования label.) Столкнулся с проблемой:
       Как отследить Tap  за пределами Edit чтобы его скрыть, не могу понять как это сделать.
    • От ENERGY
      Есть большой файл с анимацией, ~3 мб.  
      120 AnimCount - кадров, raws 10, одна картинка 400x400
      Под Android и Windows анимация прекрасно работает.
      Под iOS анимация скачет влево-вправо, или появляються куски предыдущего фрейма (нижней части) в верху текущей анимации.
      Я уже что только не делал, много раз менял файл, создавая его с разными raws, разными размерами картинок. Что-то меняется конечно, но остаются эти эффекты разной интенсивности.
      Файл склеиваю в своей проге из картинок, в финальном файле ошибок нет.
       
      Подскажите куда копать, просто замучался уже..
    • От Martifan
      Добрый день,
      Может ктонибудь помочь разобраться с записью/проигрыванием звука на iOS устройствах? 
      Нужно записывать звук в буффер (массив байтов). Нашли "замечатульную" библиотеку на github, которая позволяет обращаться к нативным методам устройства намрямую, и следуя инструкциям по записи звука в xCode пытаемся собрать тоже самое. Ниже привяжу ссылки... Библиотека мягко говоря не в лучшей кондиции такчто некоторые типы приходилось править вручную, и форматирование не вызывает восторга, но другого выбора нет. Если у когонибудь есть практика с другой библиотекой, или какиенибудь идеи, подскажите пожалуйста. Записывать надо обязательно в буффер, для дальнейшей обработки.
      GitHub библиотека
      Запись звука в xCode - github
      IOS.rar
    • От Martifan
      Всем доброго времени суток
      может кто знает как на iOS распознать речь и получены результат записать текстовом поле
      как на Android сделать я знаю но на iOS не получается
       
      Спасибо за ранее
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...