Admob interstitial orientation

时间:2015-10-22 07:04:02

标签: android admob screen-orientation

我想在我的广告中以特定方向展示admob插页式广告,具体取决于我从服务器获取的配置

在我展示广告之前,我设置了这样的活动方向(例如,如果我想要风景):

#pragma mark - WCSession Delegate

- (void)session:(WCSession *)session didReceiveMessage:(NSDictionary<NSString *, id> *)message replyHandler:(void(^)(NSDictionary<NSString *, id> *replyMessage))replyHandler
{
    if(message){
        NSData *receivedData = [message objectForKey:@"AudioData"];
        NSDictionary* response = @{@"response" : [NSString stringWithFormat:@"Data length: %lu",(unsigned long)receivedData.length]} ;
        replyHandler(response);
    }
}


#pragma mark - Standard WatchKit Delegate

-(void)sessionWatchStateDidChange:(nonnull WCSession *)session
{
    if(WCSession.isSupported){
        WCSession* session = WCSession.defaultSession;
        session.delegate = self;
        [session activateSession];

        if(session.reachable){
            NSLog(@"session.reachable");
        }

        if(session.paired){
            if(session.isWatchAppInstalled){

                if(session.watchDirectoryURL != nil){

                }
            }
        }
    }
}

在清单中我有这个属性,说我处理方向改变:

 @Override
public void onConfigurationChanged(Configuration newConfig){
    if ((VeediUtils.gamePreferences.getOrientation() != null)) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        newConfig.orientation = Configuration.ORIENTATION_LANDSCAPE;
    }
    if (Build.VERSION.SDK_INT > 17) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LOCKED);
    };
    super.onConfigurationChanged(newConfig);
}

问题在于,admob广告仍然以纵向显示方向不会改变为风景

1 个答案:

答案 0 :(得分:1)

onConfigurationChanged是一个回调函,通知您配置已更改。它不是改变屏幕方向的手段。

您需要在其他位置更改屏幕方向,可能在显示插页式广告之前。

NB改变这样的屏幕方向将是一个非常令人沮丧和恼人的用户体验。我会建议反对它。