正常情况下点击按钮会在下面文本显示数据库数据,但我调试时,点击按钮就立马闪退。 public class MainActivity extends Activity { JSONArray jArray; String result = null; InputStream is = null; StringBuilder sb = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button b1 = (Button) findViewById(R.id.button1); b1.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub EditText tv = (EditText) findViewById(R.id.editView); ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); // http get try { HttpClient httpclient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost( "http://10.0.3.2/AndPHP.php"); HttpResponse response = httpclient.execute(httpPost); HttpEntity entity = response.getEntity(); is = entity.getContent(); } catch (Exception e) { Log.e("log_tag", "Error in http connection" + e.toString()); } // convert response to string try { BufferedReader reader = new BufferedReader( new InputStreamReader(is, "iso-8859-1"), 8); sb = new StringBuilder(); sb.append(reader.readLine() + "\n"); String line = "0"; while ((line = reader.readLine()) != null) { sb.append(line + "\n"); } is.close(); result =sb.toString(); } catch (Exception e) { Log.e("log_tag", "Error converting result " + e.toString()); } // paring data int ct_id; String ct_name; try { jArray = new JSONArray(result); JSONObject json_data = null; for (int i = 0; i < jArray.length(); i++) { json_data = jArray.getJSONObject(i); ct_id = json_data.getInt("id"); ct_name = json_data.getString("name"); tv.setText(ct_id); tv.append(ct_name + " \n"); } } catch (JSONException e1) { Toast.makeText(getBaseContext(), "No City Found" ,Toast.LENGTH_LONG).show(); } catch (ParseException e1) { e1.printStackTrace(); } } }); } } 一下是Eclipse的日志: |
|
权限问题吧?
|
|
<uses-permission android:name=”android.permission.INTERNET”/>添加了这个权限没用。。 |
|
我一步步排除了一下,程序是在加入最后那个try语句块的是后才发生闪退,result的值为 [{“id”:”1″,”name”:”\u963f\u65af\u8fbe”},{“id”:”2″,”name”:”\u884c\u653f\u6751″}]
|
|
35分 |
jar包对了?result确定拿到了。。。。为什么会有问题呢。。。。奇怪
|
35分 |
用的字符串资源没找到,android.content.res.Resources$NotFoundException
|
需要另外什么包么? |
|
能否具体点,不是很明白。。。 |
|
最后try块里的tv.setText(ct_id);删掉就行了 = =
|