Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.RuntimeException:执行doInBackground()URI时出错_Java_Android - Fatal编程技术网

java.lang.RuntimeException:执行doInBackground()URI时出错

java.lang.RuntimeException:执行doInBackground()URI时出错,java,android,Java,Android,我是android编程新手 我正在尝试为应用程序编写代码 我正在尝试使用URI 但它不断给出以下错误 寻求帮助 java文件 package com.example.ayushspc.digilocker; import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.

我是android编程新手 我正在尝试为应用程序编写代码 我正在尝试使用URI 但它不断给出以下错误 寻求帮助

java文件

package com.example.ayushspc.digilocker;

import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.w3c.dom.Text;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;

public class GetRegDetails extends AppCompatActivity {
    Register register = new Register();
    EditText ET_MOBILE, ET_EMAIL;
    String json_string;
    JSONArray jsonArray;
    JSONObject jsonObject;
    String name, branch, email, mobile, enroll, OTP;
    OTPGenerator otpGenerator;
    Sendsms sendsms;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        otpGenerator = new OTPGenerator();
        sendsms = new Sendsms();
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_get_reg_details);

        enroll = register.enroll;
        json_string = getIntent().getExtras().getString("jsonresult");

        try {
            jsonObject = new JSONObject(json_string);
            jsonArray = jsonObject.getJSONArray("server_response");
            int count = 0;
            while (count < jsonArray.length()) {
                JSONObject JO = jsonArray.getJSONObject(count);
                name = JO.getString("name");
                branch = JO.getString("branch");
                count++;
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }

        TextView tv_name = (TextView) findViewById(R.id.ver_name);
        TextView tv_branch = (TextView) findViewById(R.id.ver_branch);
        tv_name.setText(name);
        tv_name.setVisibility(View.VISIBLE);
        tv_branch.setText(branch);
        tv_branch.setVisibility(View.VISIBLE);

    }

    public void verifyDetails(View view) {
        ET_MOBILE = (EditText) findViewById(R.id.ver_mobile);
        ET_EMAIL = (EditText) findViewById(R.id.ver_email);
        mobile = ET_MOBILE.getText().toString();
        email = ET_EMAIL.getText().toString();
        OTP = otpGenerator.generator();
        String number = mobile.toString();
        // sendsms.message(number, OTP);//add enrollment number to message;pass mesage as an argument
        Toast.makeText(getApplicationContext(), mobile + " " + OTP, Toast.LENGTH_SHORT).show();
        new BackgroundTask().execute(enroll, mobile, email, OTP);
        Toast.makeText(getApplicationContext(), OTP, Toast.LENGTH_LONG).show();

    }

    class BackgroundTask extends AsyncTask<String, Void, String> {
        String otp_url = "http://www.digiloc.esy.es/otp_verification.php";

        @Override
        protected String doInBackground(String... params) {
            String enrollment, mobile, email, otp;
            enrollment = params[0];
            mobile = params[1];
            email = params[2];
            otp = params[3];

            try {
                URL url = new URL(otp_url);
                HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                httpURLConnection.setRequestMethod("POST");
                httpURLConnection.setDoOutput(true);
                OutputStream outputStream = httpURLConnection.getOutputStream();
                BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream, "UTF-8"));
                String data = URLEncoder.encode("enroll", "UTF-8") + "=" + URLEncoder.encode(enrollment, "UTF-8") + "&" +
                        URLEncoder.encode("mobile", "UTF-8") + "=" + URLEncoder.encode(mobile, "UTF-8") + "&" +
                        URLEncoder.encode("email", "UTF-8") + "=" + URLEncoder.encode(email, "UTF-8") + "&" +
                        URLEncoder.encode("otp", "UTF-8") + "=" + URLEncoder.encode(otp, "UTF-8");
                bufferedWriter.write(data);
                bufferedWriter.flush();
                bufferedWriter.close();
                outputStream.close();

            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

            return null;
        }
    }
}
有人能指出错误的原因吗 也是解决这个问题的方法

enroll = register.enroll;

注册。注册
返回空值。显示
Register
类或尝试自己查找问题。

哪一行给出了错误?GetRegDetails-line:102 com.example.ayushspc.digilocker.GetRegDetails$BackgroundTask.doInBackground(GetRegDetails.java:102)哪一行是第102行@Abdelhak String data=URLEncoder.encode(“注册”,“UTF-8”)+“=”+URLEncoder.encode(注册,“UTF-8”)+”&“+尝试控制此:注册=参数[0];如果注册为空
enroll = register.enroll;