我有一个链接,我在其中提供了 2 个参数,一个 php 服务器端脚本正在执行查询并将它们写入我的数据库。
问题是在这种特定情况下,我似乎无法连接到 teh url。
这是我的按钮 xml 文件:
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:includeFontPadding="@+id/btnSubmit"
android:text="@string/btnSubmit"
android:onClick="submitNewJ"
/>
这是我的点击“监听器”:
public void submitNewJ(View view){
new submitJ().execute();
}
这里是 submitJ
代码:
public class submitJ extends AsyncTask<Void, Integer, Void>{
@Override
protected Void doInBackground(Void... params) {
try{
String encodedName = URLEncoder.encode(Name,"UTF-8");
String encodedBody = URLEncoder.encode(Body,"UTF-8");
URL url = new URL("http://site123.com/android/J/sJ.php?Name="+encodedName+"&Body="+encodedBody);
URLConnection urlConnection = url.openConnection();
@SuppressWarnings("unused")
InputStream in = urlConnection.getInputStream();
}catch(Exception e){
e.printStackTrace();
}
return null;
}
}
这是我获取字符串的方式:
EditText jN;
EditText jB;
String Name = "";
String Body = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_joke);
jN = (EditText)findViewById(R.id.newName);
jB = (EditText)findViewById(R.id.newBody);
Name = jN.getText().toString();
Body = jB.getText().toString();
}
似乎这里的连接不起作用(即使我在其他 Activity 中使用相同的代码)。我哪里弄错了? 我知道我遗漏了一些非常小的东西,但我无法发现它。
附言我的服务和链接已经过 100% 测试并且可以正常工作。
最佳答案
您在示例中的站点可能是出于引用原因,但请注意,如果它使用 https
协议(protocol)并且您正在引用 http
,您将没有被重定向到正确的链接。
您代码中的所有内容对我来说都很好。
只需确保您使用的是正确的协议(protocol)即可。
关于java - 无法连接到网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22862873/