Adview (admob) con carga de datos asincrónica
Tengo una actividad donde los anuncios se pueblan sobre la tabla dinámica poblada del código de java, esta tabla tiene las imágenes que se cargan de la red asincrónicamente. Cuando no incluyo el anuncio todo funciona como se esperaba para mí. Pero cuando incluyo adview y las imágenes que se cargan de la red de forma asíncrona, cuelga la interfaz de usuario hasta que las imágenes se cargan desde la red.
No pude entender el comportamiento, ¿Puede por favor darme la solución donde las imágenes deben cargar asincrónicamente junto con adview.
- Admob No hay relleno en el servidor de anuncios: no se pudo cargar el anuncio: 3
- Android: Copiar RawFile a Sdcard (video mp4)
- (MapView y 1700 elementos de superposición) .equals ("Slow")
- Android: el caché de mapas de bits requiere mucha memoria
- Cómo crear un archivo apk en la línea de comandos?
A continuación se muestra mi código de actividad:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" android:id="@+id/linearLayout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <com.google.ads.AdView android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:adSize="BANNER" ads:adUnitId="********" ads:loadAdOnCreate="true" /> <ScrollView android:id="@+id/scroll1" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TableLayout android:id="@+id/table_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TableRow> <TextView android:id="@+id/left_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:gravity="left|center_vertical" android:padding="5dip" android:text="Code" /> <TextView android:id="@+id/middle_text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="right|center_vertical" android:padding="5dip" android:text="Name of Company" /> <TextView android:id="@+id/right_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:gravity="right|center_vertical" android:padding="5dip" android:text="1.3" /> </TableRow> </TableLayout> </ScrollView> </LinearLayout>
Gracias
Amandeep
- Envío de mensajes OSC (control de sonido abierto) desde una aplicación android
- Informes de Crashlytics Error al recuperar la configuración de https://settings.crashlytics.com/
- ¿Qué es un evento de presionar las mejillas?
- Eclipse editText eliminar el foco (cursor) cuando se hace presionado
- String al objeto Date / Time en Android
- GetLocationOnScreen () vs getLocationInWindow ()
- ¿Crear una transición Fragment como la aplicación Contactos?
- Enviar notificación push GCM por java
Tal vez usted necesita para sepearte el adView de su LinearLayout principal, en lugar de cargarlo dentro de la disposición lineal donde sus actividades de red (asíncrona) se hará.
Sólo intenta usar el Layout de marco, con adView en la parte superior y con margin_top de "55dp" para el LinearLayout.
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="top"> <com.google.ads.AdView xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" android:id="@+id/main_adView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:gravity="center" ads:adUnitId = "******" ads:adSize = "BANNER" > </com.google.ads.AdView> </LinearLayout> <LinearLayout android:id="@+id/linearLayout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="55dp" android:orientation="vertical"> <ScrollView android:id="@+id/scroll1" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TableLayout android:id="@+id/table_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TableRow> <TextView android:id="@+id/left_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:gravity="left|center_vertical" android:padding="5dip" android:text="Code" /> <TextView android:id="@+id/middle_text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="right|center_vertical" android:padding="5dip" android:text="Name of Company" /> <TextView android:id="@+id/right_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:gravity="right|center_vertical" android:padding="5dip" android:text="1.3" /> </TableRow> </TableLayout> </ScrollView> </LinearLayout> </FrameLayout>
Por favor, hágamelo saber el estado.
Tuve un problema similar con los anuncios nativos de Admob. Quería colocar un anuncio en una vista de reciclador. Desplazándose por, la interfaz de usuario se congelaría cuando pulsé el anuncio nativo y el desplazamiento solo continuaría una vez que el anuncio se hubiera cargado
Hice algunas sincronizaciones y encontré que loadAd () tomará alrededor de 1400ms, las llamadas posteriores a loadAd () el tiempo llegó a 150ms, por lo que mi solución era crear un anuncio nativo justo después de que mi fragmento se ha creado:
private static boolean preLoadAd = true; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_help, container, false); cardsAdapter = new CardsAdapter(Cards.cards, this); recyclerView = (RecyclerView) rootView.findViewById(R.id.card_collection); //Pre-load ad to allow smoother scrolling //First time loading a native ad takes 800-1500ms, afterwards around 150ms if (preLoadAd) { //only do this once preLoadAd=false; //add the task to the message cue to run after the help fragment has shown recyclerView.postDelayed(new Runnable() { @Override public void run() { try { CardVariations.createNativeAdViewHolder(recyclerView); }catch(Exception e){e.printStackTrace();} }},200L); } return rootView; }
- ¿Está confirmado que no puedo usar el atributo de color temático en el recurso de lista de estado de color?
- Haga que todo el elemento ViewPager esté alineado al centro cuando PagerAdapter.getPageWidth () <1f