Reputation: 119
I develop an android app for updating contents into database.I do it in Background using asyntask.But my app gets force closes please help me out. The code is
class Authenticate extends AsyncTask<String, String, String>
{
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(Welcome.this);
pDialog.setMessage("Logging in. Please wait...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
@Override
protected String doInBackground(String...args) {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("s", s));
JSONObject json = jsonParser.makeHttpRequest(url_authenticate,"POST", params);
try {
int success = json.getInt(TAG_SUCCESS);
name=json.getString(TAG_NAME);
phone=json.getString(TAG_PHONE);
fid=json.getString(TAG_FID);
if (success == 1) {
// successfully updated
Intent i = new Intent("com.example.walcliffbusinesssuite.Redirect");
startActivity(i);
} else {
// failed to update product
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute() {
pDialog.dismiss();
}
}
The logcat is
09-25 06:11:27.970: E/AndroidRuntime(929): FATAL EXCEPTION: AsyncTask #5
09-25 06:11:27.970: E/AndroidRuntime(929): java.lang.RuntimeException: An error occured while executing doInBackground()
09-25 06:11:27.970: E/AndroidRuntime(929): at android.os.AsyncTask$3.done(AsyncTask.java:299)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.util.concurrent.FutureTask.run(FutureTask.java:239)
09-25 06:11:27.970: E/AndroidRuntime(929): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.lang.Thread.run(Thread.java:856)
09-25 06:11:27.970: E/AndroidRuntime(929): Caused by: java.lang.SecurityException: Permission denied (missing INTERNET permission?)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.net.InetAddress.lookupHostByName(InetAddress.java:418)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
09-25 06:11:27.970: E/AndroidRuntime(929): at java.net.InetAddress.getAllByName(InetAddress.java:214)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
09-25 06:11:27.970: E/AndroidRuntime(929): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
Upvotes: 0
Views: 110
Reputation: 7082
Add the permission of Internet in manifest.xml file
<uses-permission android:name="android.permission.INTERNET"/>
Upvotes: 1
Reputation: 133580
Caused by: java.lang.SecurityException: Permission denied (missing INTERNET permission?)
Add this in manifest file
<uses-permission android:name="android.permission.INTERNET"/>
Upvotes: 3