所以我的任务是创建一个经常使用Web服务的Android应用程序。
我是android和java的新手,但我不明白为什么这不起作用。有人可以帮忙吗?此时我要做的就是记录一个网站的html代码,在这种情况下是谷歌。
MainActivity.java
@Service
class UserServiceController(val dsl: DSLContext, val teamService: TeamService) {
// your class members
}
WebService.java
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
我不断在日志中出现错误2,为什么会这样?有人可以帮助使此代码工作并记录输出。 谢谢!
堆栈:
package com.dummies.myapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.util.Log;
import com.dummies.myapplication.WebService;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String contents = WebService.getContents("http://www.google.com", "utf-8");
Log.d("Jon", contents);
setContentView(R.layout.activity_main);
}
public void invokeWS(){
}
}
答案 0 :(得分:0)
问题在于Android不允许您在UIOperations发生的同一个线程上执行网络操作。
要连接到网络,您必须使用AsyncTasks或Services创建不同的线程。
以下是有关Android上的网络的详细解答:How to fix android.os.NetworkOnMainThreadException?
答案 1 :(得分:0)
也许你应该使用Jsoup Library。这太酷了。您可以在此处找到更多信息。