簡體   English   中英

當用戶在Android應用程序使用過程中連接到Internet時,如何顯示橫幅廣告?

[英]How to show banner ads when user connects to Internet in the middle of app usage in Android?

考慮以下流程:

1)用戶在設備上沒有互聯網連接時打開應用程序。 (因此,不會顯示橫幅廣告)

2)使用該應用程序時,用戶連接到Internet。

在上述情況下,我的橫幅廣告不會自動加載到Internet連接建立中。 我希望在步驟2之后顯示橫幅廣告。

做這個的最好方式是什么?

為了進一步詳細說明,為了使橫幅廣告立即顯示在應用程序中,這次,我必須在具有Internet連接的情況下最終重新啟動應用程序。 換句話說,如果在沒有互聯網連接的情況下啟動該應用程序,則不會顯示橫幅廣告。

您可以使用此類來更改Internet連接狀態(只需按原樣添加此類)

 public class NetworkStateReceiver extends BroadcastReceiver {

protected List<NetworkStateReceiverListener> listeners;
protected Boolean connected;

public NetworkStateReceiver() {
    listeners = new ArrayList<NetworkStateReceiverListener>();
    connected = null;
}

public void onReceive(Context context, Intent intent) {
    if(intent == null || intent.getExtras() == null)
        return;

    ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo ni = manager.getActiveNetworkInfo();

    if(ni != null && ni.getState() == NetworkInfo.State.CONNECTED) {
        connected = true;
    } else if(intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY,Boolean.FALSE)) {
        connected = false;
    }

    notifyStateToAll();
}

private void notifyStateToAll() {
    for(NetworkStateReceiverListener listener : listeners)
        notifyState(listener);
}

private void notifyState(NetworkStateReceiverListener listener) {
    if(connected == null || listener == null)
        return;

    if(connected == true)
        listener.networkAvailable();
    else
        listener.networkUnavailable();
}

public void addListener(NetworkStateReceiverListener l) {
    listeners.add(l);
    notifyState(l);
}

public void removeListener(NetworkStateReceiverListener l) {
    listeners.remove(l);
}

public interface NetworkStateReceiverListener {
    public void networkAvailable();
    public void networkUnavailable();
 }
}

當互聯網連接發生變化時,請致電廣告

這里查看完整用法

或者您也可以查看問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM