Sorry to ask this question after searching in http://stackoverflow.com . But I couldn't process to next activity when using these below codes at different section.
Here when user Not connected internet then a popup will alert and says "you not connected to internet" in alertdialog and when user click on exit button in alertdilog the app will close. if user have internet connection a popup will alert and says "you have internet connection" in alertdialog and when user click on continue button app continues to next activity. I am having problem in continuing to next activity, How to do that?
Below codes are show in their section
Code in AndroidDetectInternetConnectionActivity.java
package com.example.detectinternetconnection;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class AndroidDetectInternetConnectionActivity extends Activity {
// flag for Internet connection status
Boolean isInternetPresent = false;
// Connection detector class
ConnectionDetector cd;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btnStatus = (Button) findViewById(R.id.btn_check);
// creating connection detector class instance
cd = new ConnectionDetector(getApplicationContext());
/**
* Check Internet status button click event
* */
btnStatus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// get Internet status
isInternetPresent = cd.isConnectingToInternet();
// check for Internet status
if (isInternetPresent) {
// Internet Connection is Present
// make HTTP requests
AlertDialog.Builder builder = new AlertDialog.Builder(AndroidDetectInternetConnectionActivity.this);
builder.setMessage("You have network connection.")
.setTitle("Internet Connection")
.setCancelable(false);
AlertDialog alert = builder.create();
alert.setButton("Continue", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which){
// Do call some activity. Do what you wish to;
startActivity(new Intent(AndroidDetectInternetConnectionActivity.this,MainActivity2.class));
}
});
alert.show();
}
else {
// Internet connection is not present
// Ask user to connect to Internet
AlertDialog.Builder builder = new AlertDialog.Builder(AndroidDetectInternetConnectionActivity.this);
builder.setMessage("You need a network connection to use this application. Please turn on mobile network or Wi-Fi in Settings.")
.setTitle("No Internet Connection")
.setCancelable(false);
AlertDialog alert = builder.create();
alert.setButton2("Exit", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which) {
//close the program
AndroidDetectInternetConnectionActivity.this.finish();
}
});
// Showing Alert Message
alert.show();
}
}
Code in ConnectionDetector.java package com.example.detectinternetconnection;
import android.app.AlertDialog;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
public class ConnectionDetector {
private Context _context;
public ConnectionDetector(Context context){
this._context = context;
}
public boolean isConnectingToInternet(){
ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null)
{
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED)
{
return true;
}
}
return false;
}
}
Code in AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.detectinternetconnection"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".AndroidDetectInternetConnectionActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MainActivity2"></activity>
</application>
<!-- Internet Permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
Tell me where I am doing wrong?
将此添加到您的Activity
的开头:
import android.content.Intent;
Use:
Intent mainIntent;
mainIntent = new Intent(CurrentClass.this,ClassToBeLoaded.class);
CurrentClass.this.startActivity(mainIntent);
CurrentClass.this.finish();
Also press Ctrl
+ Shift
+ O
once done
The above process adds all the required imports to your class file.
Total code is fine, but just create initialize the alertdialog at last through create()..
if (isInternetPresent) {
// Internet Connection is Present
// make HTTP requests
AlertDialog.Builder builder = new AlertDialog.Builder(AndroidDetectInternetConnectionActivity.this);
builder.setMessage("You have network connection.")
.setTitle("Internet Connection")
.setCancelable(false);
alert.setPositiveButton("Continue", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which){
// Do call some activity. Do what you wish to;
startActivity(new Intent(AndroidDetectInternetConnectionActivity.this,MainActivity2.class));
}
});
AlertDialog alert = builder.create();
alert.show();
EDIT
Here is your total Activity Class.
package com.example.detectinternetconnection;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class AndroidDetectInternetConnectionActivity extends Activity implements OnClickListener {
Boolean isInternetPresent = false;
ConnectionDetector cd;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Button btnStatus = (Button) findViewById(R.id.btnStatus);
cd = new ConnectionDetector(getApplicationContext());
btnStatus.setOnClickListener(this);
}
@Override
public void onClick(View v) {
isInternetPresent = cd.isConnectingToInternet();
if (isInternetPresent) {
AlertDialog alert;
AlertDialog.Builder builder = new AlertDialog.Builder(
AndroidDetectInternetConnectionActivity .this);
builder.setTitle("Internet Connection");
builder.setCancelable(false);
builder.setPositiveButton("Continue",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
startActivity(new Intent(AndroidDetectInternetConnectionActivity .this,
MainActivity2 .class));
}
});
alert = builder.create();
alert.show();
}
else {
AlertDialog alert;
AlertDialog.Builder builder = new AlertDialog.Builder(
AndroidDetectInternetConnectionActivity .this);
builder.setTitle("No Internet Connection");
builder.setMessage("Please Connect To Internet");
builder.setCancelable(false);
builder.setPositiveButton("Exit",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
alert = builder.create();
alert.show();
}
}
}
I think you will take care of other classes.For some knowledge you may refer the Android Dialog tutorials on developer site.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.