制作应用程序需要Internet连接才能玩

时间:2016-01-22 09:46:22

标签: java android

我只是想问一下如何使应用程序需要Internet连接才能启动,如果用户智能手机没有连接,那么该应用程序将显示一些关注,如Clash of Clans游戏或其他在线游戏

enter image description here

如果连接丢失或关闭,应用程序会显示出一些关注

任何人都可以解释或提供如何做到这一点?

1 个答案:

答案 0 :(得分:1)

使用BroadcastReceiver您可以归档此内容。

public class InternetChangeReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(final Context context, final Intent intent) {
        final ConnectivityManager connMgr = (ConnectivityManager) context
                .getSystemService(Context.CONNECTIVITY_SERVICE);

        final android.net.NetworkInfo wifi = connMgr
                .getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        final android.net.NetworkInfo mobile = connMgr
                .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

        if (wifi.isAvailable() || mobile.isAvailable()) {
            // Open your alert dialog here.


        }
    }
}

在清单文件中注册您的BroadcastReceiver

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.checkinternet"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <receiver android:name=".InternetChangeReceiver" >
            <intent-filter>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />                
            </intent-filter>
        </receiver>
    </application>

</manifest>