Java Android BackgroundTask抛出运行时错误
我试图通过一个标签通过backgroundtask连接到一个数据库,但它不喜欢。你们能看到问题是什么吗,因为我在另一个项目中使用了相同的代码,并且工作得很好Java Android BackgroundTask抛出运行时错误,java,android,android-asynctask,runtime,runtimeexception,Java,Android,Android Asynctask,Runtime,Runtimeexception,我试图通过一个标签通过backgroundtask连接到一个数据库,但它不喜欢。你们能看到问题是什么吗,因为我在另一个项目中使用了相同的代码,并且工作得很好 public class Tab2Activity extends Activity { SharedPreferences preferences; String driver; String task; @Override protected void onCreate(Bundle sa
public class Tab2Activity extends Activity
{
SharedPreferences preferences;
String driver;
String task;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.tab2);
preferences = getSharedPreferences("MYPREFS", Context.MODE_PRIVATE);
TextView name = (TextView) findViewById (R.id.textView1);
// dummy data to send
task="login";
driver="2";
// create and call background activity
BackgroundTask backgroundTask = new BackgroundTask(Tab2Activity.this);
backgroundTask.execute(task,driver);
//get data back from sharedpreference
String mName = preferences.getString("myData","ERROR getting name");
//display data
name.setText(mName);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.tab2, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
这是背景任务代码
public class BackgroundTask extends AsyncTask<String,Void,String>
{
SharedPreferences preferences;
SharedPreferences.Editor editor;
SharedPreferences.Editor pig;
Context context;
BackgroundTask(Context ctx)
{
this.context = ctx;
}
@Override
protected String doInBackground(String... params)
{
preferences = context.getSharedPreferences("MYPREFS", Context.MODE_PRIVATE);
editor = preferences.edit();
editor.putString("flag","0");
editor.commit();
String urlLogin = "http://Domain.com/GetJobs.php";
String task = params[0];
String driver_id_app = params[1];
try {
URL url = new URL(urlLogin);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
//send the driver number to the database
OutputStream outputStream = httpURLConnection.getOutputStream();
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream,"UTF-8");
BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
String myData = URLEncoder.encode("driver_id","UTF-8")+"="+URLEncoder.encode(driver_id_app,"UTF-8");
//+"&"+URLEncoder.encode("identifier_loginPassword","UTF-8")+"="+URLEncoder.encode(loginPassword,"UTF-8");
bufferedWriter.write(myData);
bufferedWriter.flush();
bufferedWriter.close();
outputStream.close();
//get response from the database
InputStream inputStream = httpURLConnection.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream,"UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String dataResponse = "";
String inputLine = "";
while((inputLine = bufferedReader.readLine()) != null){
dataResponse += inputLine;
}
bufferedReader.close();
inputStream.close();
httpURLConnection.disconnect();
//System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
///System.out.println(dataResponse);
editor.putString("flag","login");
editor.commit();
pig = preferences.edit();
pig.putString("myData",dataResponse);
pig.commit();
return dataResponse;
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
return null;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onProgressUpdate(Void... values)
{
super.onProgressUpdate(values);
}
public void display(String title, String message){
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(message);
builder.show();
}
}
真的希望你们能提出一些建议…我可以清楚地看到,你们没有获得互联网连接许可
原因:java.lang.SecurityException:权限被拒绝(缺少INTERNET权限?)
您需要将此项添加到清单中以启用internet连接:
<uses-permission android:name="android.permission.INTERNET" />
我可以清楚地看到您缺少internet连接权限
原因:java.lang.SecurityException:权限被拒绝(缺少INTERNET权限?)
您需要将此项添加到清单中以启用internet连接:
<uses-permission android:name="android.permission.INTERNET" />
非常感谢。。。非常感谢你。。。嗯