admob ipad landscape not work with error <Google> Invalid Request

  • warning: Declaration of views_handler_argument::init(&$view, &$options) should be compatible with views_handler::init(&$view, $options) in /home/xnvgu7/public_html/sites/all/modules/views/handlers/views_handler_argument.inc on line 745.
  • warning: Declaration of views_handler_filter::options_validate(&$form, &$form_state) should be compatible with views_handler::options_validate($form, &$form_state) in /home/xnvgu7/public_html/sites/all/modules/views/handlers/views_handler_filter.inc on line 585.
  • warning: Declaration of views_handler_filter::options_submit(&$form, &$form_state) should be compatible with views_handler::options_submit($form, &$form_state) in /home/xnvgu7/public_html/sites/all/modules/views/handlers/views_handler_filter.inc on line 585.
  • warning: Declaration of views_handler_filter_boolean_operator::value_validate(&$form, &$form_state) should be compatible with views_handler_filter::value_validate($form, &$form_state) in /home/xnvgu7/public_html/sites/all/modules/views/handlers/views_handler_filter_boolean_operator.inc on line 149.
  • warning: Declaration of views_plugin_style_default::options(&$options) should be compatible with views_object::options() in /home/xnvgu7/public_html/sites/all/modules/views/plugins/views_plugin_style_default.inc on line 25.
  • warning: Declaration of views_plugin_row::options_validate($form, &$form_state) should be compatible with views_plugin::options_validate(&$form, &$form_state) in /home/xnvgu7/public_html/sites/all/modules/views/plugins/views_plugin_row.inc on line 135.
  • warning: Declaration of views_plugin_row::options_submit($form, &$form_state) should be compatible with views_plugin::options_submit(&$form, &$form_state) in /home/xnvgu7/public_html/sites/all/modules/views/plugins/views_plugin_row.inc on line 135.

使用admob時,在iPad landscape mode,當你看到 :

<Google> Invalid Request: {

    "drt_include" = 1;

    errors = "Ad size will not fit on screen";

    "google.afma.Notify_dt" = 1367802121417;

    "request_id" = 3;

    "request_scenario" = "offline_empty";

    type = admob;

    "use_webview_loadurl" = 0;

}

 

這表示admob的ad錯了,仔細去看,會發現admob的bannerView height是0。

 

解法:

在.h內做個UIView wrapBannerView:

UIView *wrapBannerView;

 

在.m內把bannerView subview,並且其後以wrapBannerView運作,如下:

 

wrapBannerView = [[UIView alloc] initWithFrame:CGRectMake(2000, 2000, bannerView_.frame.size.width, bannerView_.frame.size.height) ];

[wrapBannerView addSubview:bannerView_];

....

[self.view addSubview:wrapBannerView];

....

wrapBannerView.center = newBannerCenter;

另外,不能將wrapBannerView加入view,原因在此