2013-07-18 63 views
2

我有一個網站,顯示iOS上使用HTML元標記的智能應用程序橫幅。我只想在iPod上顯示橫幅廣告。防止在iPad上顯示智能應用程序橫幅

如何防止它在iPad上顯示?

蘋果資源: http://developer.apple.com/library/ios/#documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html

我使用(從Apple資源)代碼:

<meta name="apple-itunes-app" content="app-id=myAppStoreID"> 

回答

3

你必須使用Javascript來做到這一點,因爲沒有正確的方法來完成HTML中的平臺檢測。

擺脫HTML代碼中的元標記,並使用下面的代碼片段,或者只是使用它的一部分,然而你喜歡。如果您想「按原樣」使用它,請將其粘貼在身體的底部。

(function($){ 
    var is_iPad = navigator.userAgent.match(/iPad/i) != null; 

    // Fill in your Apple-App stuff here 
    var app_id = "<YOUR_APPLE_APP_ID>", 
     affiliate_data = null, 
     app_argument = null; 

    // exclude iPad 
    if(!is_iPad) { 
    var meta = $("<meta>"), content = 'app-id=' + app_id; 
    meta.attr('name', 'apple-itunes-app'); 

    // Optional stuff (only when filled in) 
    if(affiliate_data) content += ', affiliate-data=' + affiliate_data; 
    if(app_argument) content += ', app-argument=' + app_argument; 

    // Apply 
    meta.attr('content', content); 
    $('head').append(meta); 
    } 
}(jQuery)); 
+1

雖然我用了一個稍微不同的實現,但這確實是解決方案。他們的方式我嘗試了它有點不對。 –

+1

雖然這確實會添加適當的標籤,但Safari for iPad沒有選擇標籤並顯示橫幅。我在iOS 6和iOS 7設備上進行了測試。 – Christian

-1

寫這個方法來知道在哪個設備上的程序正在運行

// in .h file 
+ (BOOL) isIdiomIsIPad; 

// in .m file 
+ (BOOL) isIdiomIsIPad 
{ 
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) 
    return YES; 
else 
    return NO; 
} 

然後您正在應用您的自定義的方法使用此

if([[Global isDeviceType] isEqualToString:iPad]) 
{ 
    //do what you want 
    // Global is class name where method was defined, write your class name in which you define that method and import it where you are wiring this code 
} 
+0

我很抱歉,但我覺得我還不夠清楚:這是一個網站,而不是一個本地應用程序。因此我的標籤和參考蘋果資源。 –

+0

oops。對不起,這是我的錯誤,我讀得很好 – iAhmed

相關問題