Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#6 #73 第六次作业 #470

Merged
merged 2 commits into from
Jun 16, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,10 @@ public void click4(View view) {
Intent intent = new Intent(this, Net1414080903124bangActivity.class);
startActivity(intent);
}
public void click5(View view) {
Intent intent = new Intent(this, Net1414080903124AnalysisJson.class);
startActivity(intent);
}

}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package edu.hzuapps.androidlabs.homeworks.net1414080903124;

import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;


import org.json.JSONArray;
import org.json.JSONObject;

import edu.hzuapps.androidlabs.R;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

;

public class Net1414080903124AnalysisJson extends AppCompatActivity {
private String soft_name;
private String developer;
private String version;
private TextView GithubResponse;
private Handler handler = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_net1414080903124_analysis_json);
handler = new Handler();
GithubResponse = (TextView) findViewById(R.id.analysis_json);
Request();
}
private void Request() {
new Thread(){
@Override
public void run() {
try {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("https://raw.githubusercontent.com/1414080903124/android-labs-2017/master/AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903124/Net141408093116SoftInfo.json").build();//目标地址
Response response = client.newCall(request).execute();
String responseData = response.body().string();
Analysis(responseData);
} catch (Exception e) {
e.printStackTrace();
}
handler.post(runnableUi);
}
}.start();
}
/*解析json文件*/
private void Analysis(String jsonData) {
try {
JSONArray jsonArray = new JSONArray(jsonData);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
soft_name= jsonObject.getString("soft_name");
developer= jsonObject.getString("developer");
version = jsonObject.getString("version");
}
} catch (Exception e) {
e.printStackTrace();
}
}
/*更新UI*/
Runnable runnableUi = new Runnable() {
public void run() {
GithubResponse.setText("软件名: " + soft_name + "\n" + "\n" + "开发者: " + developer + "\n" + "\n" + "版本号: " + version + "\n" + "\n");//显示解析结果
}
};
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[{"soft_name":"WALLET","developer":"WBQ","version":"1.0"}]
10 changes: 10 additions & 0 deletions AndroidLabs/app/src/main/res/layout/activity_net1414080903124.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,16 @@
android:layout_height="wrap_content"
android:id="@+id/button8"
android:onClick="click4" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/soft_info"
android:text="软件信息"
android:layout_marginTop="23dp"
android:layout_alignTop="@+id/imageView"
android:layout_alignStart="@+id/login_button"
android:onClick="click5"/>

</LinearLayout>


Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_net1414080903124_analysis_json"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="edu.hzuapps.androidlabs.homeworks.net1414080903124.Net1414080903124AnalysisJson">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/analysis_json"/>
</RelativeLayout>
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,6 @@
android:layout_marginTop="39dp"
android:id="@+id/button6"
android:layout_below="@+id/textView"
android:layout_alignParentEnd="true"/>
android:layout_alignParentEnd="true"
android:onClick="click5"/>
</RelativeLayout>