項目設想:
網站部分開發一個關於web開發知識的網站,要通過android來閱讀這個模組的內容。
實現:
- 通過手機瀏覽器直接閱讀,優點:不用安裝單獨的用戶端。缺點:會存在一些冗餘的資訊消耗客戶的流量。
- 通過一個自己網站實現的app,優點:可以針對手機用戶端單獨設計app,將其他圖片和無相關的內容過濾掉,節省客戶的流量,缺點:開發成本變大。
現在我們通過技術實現第二種實現方式:自己實現Android用戶端。
一 建立自己的網站
將自己的網站的內容發布,更新,刪除都放到web互連網上維護,相信有很多收費和不收費的,上網找找就能找到自己滿意的。我們這次講得重點是Android app。
二 建立一個view
這個view很簡單,就是一個可以下來查看當前全部的文字內容。
<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="306px" android:layout_height="410px" android:layout_x="7px" android:layout_y="61px" android:scrollbars="vertical" android:fadingEdge="vertical"> <TextView android:id="@+id/ResultView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="2px" android:layout_marginBottom="2px" android:layout_marginLeft="2px" android:layout_marginRight="2px" android:text="" android:layout_x="7px" android:layout_y="61px" > </TextView></ScrollView>
三 建立一個app工程(InternetActivity)
這次用到的是HttpGet,類似的還可以使用HttpPost.具體代碼如下:
public class InternetActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.rdbox); TextView rbox=(TextView)findViewById(R.id.ResultView); HttpGet post=new HttpGet("http://www.demon.com/"); try{ HttpResponse response=new DefaultHttpClient().execute(post); if(response.getStatusLine().getStatusCode()==200){ String result=EntityUtils.toString(response.getEntity()); result=result.replaceAll("<", ""); result=result.replaceAll(">", ""); rbox.setText(result); } else{ rbox.setText("code:"+response.getStatusLine().toString()); } } catch(Exception ex){ rbox.setText("error:"+ex.getMessage().toString()); ex.printStackTrace(); } } }
運行,發現有錯誤,不能正常返回內容,尋找之後發現,Android的許可權很嚴格,還要在AndroidManifest.xml加入一行代碼:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="qiyesite.android.readbox" android:versionCode="1" android:versionName="1.0" ><uses-permission android:name="android.permission.INTERNET" />
記住位置很重要,一定要放到manifest 下的第一級目錄。最好上一張運行。