[英]Google Cloud Endpoints Setup Trouble
我對Google的Cloud Platform完全陌生,無法在Android設備上對其進行設置。 我正在嘗試按照本教程進行操作,並且正要嘗試使用Android模擬器測試后端。 但是,模擬器會在20秒后向我發送此消息 ,而應該在其中說出我的名字。 到目前為止,這是我的代碼:
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
buildUI();
new EndpointsAsyncTask().execute(new Pair<Context, String>(this, "Solomon"));
}
EndpointsAsyncTask.java
public class EndpointsAsyncTask extends AsyncTask<Pair<Context, String>, Void, String> {
private static MyApi myApiService = null;
private Context context;
@Override
protected String doInBackground(Pair<Context, String>... params) {
if(myApiService == null) { // Only do this once
MyApi.Builder builder = new MyApi.Builder(AndroidHttp.newCompatibleTransport(),
new AndroidJsonFactory(), null)
// options for running against local devappserver
// - 10.0.2.2 is localhost's IP address in Android emulator
// - turn off compression when running against local devappserver
.setRootUrl("http://10.0.2.2:8080/_ah/api/")
.setGoogleClientRequestInitializer(new GoogleClientRequestInitializer() {
@Override
public void initialize(AbstractGoogleClientRequest<?> abstractGoogleClientRequest) throws IOException {
abstractGoogleClientRequest.setDisableGZipContent(true);
}
});
// end options for devappserver
myApiService = builder.build();
}
context = params[0].first;
String name = params[0].second;
try {
return myApiService.sayHi(name).execute().getData();
} catch (IOException e) {
return e.getMessage();
}
}
@Override
protected void onPostExecute(String result) {
Toast.makeText(context, result, Toast.LENGTH_LONG).show();
}
}
感謝所有幫助!
編輯:部分問題是我在運行Endpoints Backend,而不是App Engine Servlet Backend。 但是現在我現在遇到“連接被拒絕”的問題,並且正在運行App Engine Servlet后端。 有任何想法嗎?
經過幾天的苦苦掙扎,我發現問題是我需要將rootUrl從http://10.0.2.2:8080/_ah/api/
更改為我的appspot域。 現在,我收到Hello World消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.