Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 第一個Android DemoChat(偽即使通訊)

第一個Android DemoChat(偽即使通訊)

編輯:關於Android編程

學習Android到現在估計應該還不到一個月的時間,我很激動能夠在自己的努力還有奮斗下開發一個自己想要的App,雖然這個App的功能還不夠完善,界面很丑陋,Bug很存在很多,但是我覺得這個起碼是我自己動用智慧開發的第一個App,所以我要在這裡將我開發的思路還有一個想法寫在這裡。

以實現功能:

即時通訊:不能好友之間可以即時通訊。但是同時只能和一個人通訊。

注 冊:注冊功能實現,但是數據保存的是客戶端,即是在Android本地的數據庫,並沒有將用戶保存到服服務器。

登 錄:登錄會自動和本地數據庫中進行校對,基本的登錄思想。

添加好友:當前數據庫中存在好友時,可以實現添加到好友列表。Bug:Sqlite的用法還是不夠熟練,當存在該好友的情況下還是可以繼續添加該還有

用到的知識:

基本的Android界面布局,Sqlite,Servlet(服務器端),JavaBean思想,sHttp協議,Android中的 Http操作,ListView,自定義ArrayAdapter,Android中Activity的生命周期,Activity中的定時操作,異步處理,子線程處理。

功能詳解:

Login(登錄界面):

 

\

 

作為App的主頁面,雖然丑陋了一點,但是它起到的作用也就是僅僅登錄作用,當點擊登錄之後,會自動和本地數據庫中做校驗,存在即登錄,失敗即提示無法登陸;

 

\

 

Regist(注冊頁面):

和登錄息息相關的部分,登錄即少不了注冊

\

 

注冊提供最基本的用戶名和密碼,但是在數據庫中會自動生成一個UUID當做該用戶的主鍵

根據從Login頁面獲得到的User在本地數據庫中進行查找。 如果找到那麼就返回一個SingleFriend的Bean類。

	public singleFriend seachFriendforFriendList(String userName){		
		List list = new ArrayList();
		String username;
		boolean falg=false;
		Cursor cursor=db.query("Friend", null, "user=?", new String[]{userName}, null, null, null);
		if (cursor.moveToFirst()) {
			falg=true;
			username=cursor.getString(cursor.getColumnIndex("user"));
			do{
				Friend friend = new Friend();
				friend.setFriendName(cursor.getString(cursor.getColumnIndex("friend")));
				friend.setMsg_path(cursor.getInt(cursor.getColumnIndex("img")));
				list.add(friend);
			}
			while(cursor.moveToNext());
			SingleFriend.setUserName(username);
			SingleFriend.setFriends(list);
			return SingleFriend;
			
		}
		 else if(!cursor.moveToFirst()) {
			 falg=false;
			SingleFriend=null;
			return SingleFriend;
		}		
		return SingleFriend;
			
	}

這個方法就是從本地數據庫查找好友的方法。

其中在這個頁面,需要自己重寫一個FriendAdapter方法,

繼承自ArrayAdapter顯示ListView中的具體類容。

其中ListView中的具體類容就和重寫的這個方法的布局(Layout)還有中的具體內容有關
添加好友頁面:

會從數據庫中查找你輸入用戶名,找到即返回,找不到就提示不存在。聊天界面:

\

基本的及時通訊,已知Bug:

代碼中處理的原因,不能收到第一條消息。並且必須兩個人同時打開對方的對話框才會收到消息
同時我也實現了將好友的聊天記錄保存到本地數據庫。就不在這裡即時即時通訊了
處理思想,通過自己寫的服務器端(servlet)通過訪問該Servlet並帶入不同的值實現消息的保存,然後再頁面一直請求
服務器端一直請求屬於自己的那一個消息。顯示到界面中。

 

好了基本的功能以及演示完畢了,我這個博客寫的也是比較簡單,但是我會不斷充實我自己的。好困,睡覺去了。

說一下自己下階段的打算:Android中的活動很重要,准備探索一下Activity生命周期;

學習Android的Touch事件的監聽;

學習基本的android動畫。

 

 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved