Изготовленная на заказ реклама с UIWebView - PullRequest
1 голос
/ 01 августа 2011

У меня есть соглашение с компанией (читай: одна компания), которая хотела бы разместить объявление в приложении, которое я создаю.Поскольку это только одна компания, я считаю, что iAd не является для меня решением.Это, однако, вызывает два вопроса:

1) Можно ли открыть ссылку в сафари с веб-страницы, загруженной в UIWebView (я думаю, с помощью Javascript или аналогичных методов)?) Будет ли Apple даже принимать приложение с такой рекламой?

Спасибо, Каспер

Ответы [ 3 ]

2 голосов
/ 01 августа 2011

Я думаю, что у Apple не будет проблем с этим.В приложениях для iOS вы даже можете использовать рекламных провайдеров, отличных от iAd.

Если у вас есть UIWebView, вы можете показывать рекламу в этом виде без запуска Safari.В противном случае вы можете использовать

shouldStartLoadWithRequest:(NSURLRequest *)request

для перехвата клика.Это метод UIWebViewDelegate, который вызывается при касании / нажатии ссылки.

Здесь , вы можете найти полный пример.

2 голосов
/ 01 августа 2011

У Apple не должно быть проблем с этим типом рекламы. Если вы посмотрите на протокол делегирования UIWebView, есть способ переопределить поведение, когда вы щелкаете ссылку, и затем вы можете перенаправить пользователя в MobileSafari вместо обработки запроса в UIWebView.

Если вы хотите, чтобы все объявление было кликабельным, вы можете создать подкласс UIWebView и переопределить сенсорные обработчики в представлении (UI), или вы можете добавить распознаватель жестов касания.

-

Это метод делегата, который вы хотите реализовать, верните ему NO, а затем возьмите URLRequest, получите URL и откройте ссылку с вашим UIApplication:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
0 голосов
/ 01 августа 2011

Если вы хотите использовать статические изображения для отображения рекламы вместо HTML, вы можете использовать JPAdvertise . Он даже сделан в тех же размерах, что и iAd.

...