2013-07-29 100 views
6

Tôi hiện đang tích hợp AdMob vào trò chơi Android của mình.Kích thước quảng cáo AdMob trên Android

Tôi gặp khó khăn khi tích hợp các biểu ngữ thông minh vào bố cục dựa trên framelayout của mình, vì chúng chiếm nhiều lượng màn hình bất động sản khác nhau trên các thiết bị khác nhau. Ví dụ, nếu tôi hiển thị một biểu ngữ thông minh trên Acer A500 (MDPI 1280x800), tôi nhận được một kích thước 1280x90px, trong khi trên Nexus 7, tôi nhận được 1279x66px (TVDPI 1280x800) và trên Galaxy Nexus của mình (HDPI 1280x720) với 1196x64px.

Theo tài liệu AdMob, đó có thể là hành vi dễ hiểu, xem xét rằng các giá trị được đưa ra trong tài liệu hướng dẫn là dp: https://developers.google.com/mobile-ads-sdk/docs/admob/smart-banners

Tuy nhiên, hành vi này là một vấn đề lớn đối với tôi, vì một smartbanner với chiều cao 90px trên màn hình MDPI 1200x800px chiếm nhiều bất động sản màn hình hơn một biểu ngữ thông minh với chiều cao 64px trên màn hình HDPI (Xem ảnh chụp màn hình bên dưới).

Vì vậy, đây là câu hỏi của tôi: - Tôi nên đặt bao nhiêu khoảng trống ít nhất cho một biểu ngữ thông minh? - Có ai đã thử một cái gì đó tương tự, và làm thế nào bạn đối phó với điều đó?

Lưu ý: Thật không may, việc sử dụng bố cục khác với framelayout không phải là một tùy chọn tại thời điểm này. Ngoài ra, không thể sử dụng bố cục XML để tích hợp quảng cáo.

Best Regards,

Lorenz

Ảnh chụp màn hình:

http://imgur.com/qGAk77Y (A500)

+0

http://imgur.com/qGAk77Y,dK3buz2,Gg1hvyu#2 (Nexus 7) http://imgur.com/qGAk77Y,dK3buz2,Gg1hvyu#1 (Galaxy Nexus) - xin lỗi, không đủ đại diện để đăng tất cả liên kết – lorenz

Trả lời

0
  1. Đừng nghĩ về px. Nghĩ về dp (pixel độc lập mật độ)
  2. Đặt chỗ lớn nhất. Ví dụ: 1280dp x 90pd bằng cách sử dụng Bố cục có chứa và nhúng AdView của bạn vào bên trong.
1

Nếu bố cục của bạn được xác định bằng xml, bạn có thể tạo một bố cục cho mỗi kích thước màn hình (layout-xlarge/mylayout.xml, layout-large/mylayout.xml, layout-normal/mylayout.xml, v.v. ..)

Thông tin thêm ở đây: http://developer.android.com/guide/practices/screens_support.html

Đừng nhìn vào mật độ, bởi vì, màn hình 10.1" tablet có mật độ trung bình, nhưng một 4,3" điện thoại với độ phân giải 480x850 sẽ có mật độ cao. Sử dụng kích thước màn hình thay thế (xlarge lớn bình thường nhỏ).

Nếu bạn cần phải làm điều đó programatically, bạn có thể nhận được kích thước màn hình với điều này:

Configuration config = activity.getResources().getConfiguration(); 
int screenlayout = config.screenLayout; 

và để so sánh, sử dụng Configuration.SCREENLAYOUT_xxx.