當前位置:首頁 » 雲伺服器 » android開發用什麼伺服器

android開發用什麼伺服器

發布時間: 2024-08-29 17:54:42

㈠ android 用openfire做伺服器,smack來連接怎麼連接不上

android客戶端接收 openfire 伺服器發送來的消息:

客戶端代碼如下:

java代碼

packagecom.example.openfiretest;

importorg.jivesoftware.smack.Chat;

importorg.jivesoftware.smack.ChatManager;

importorg.jivesoftware.smack.ChatManagerListener;

importorg.jivesoftware.smack.ConnectionConfiguration;

importorg.jivesoftware.smack.MessageListener;

importorg.jivesoftware.smack.XMPPConnection;

importorg.jivesoftware.smack.packet.Message;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.view.Menu;

importandroid.view.View;

importandroid.view.View.OnClickListener;

importandroid.view.Window;

importandroid.widget.CheckBox;

importandroid.widget.EditText;

importandroid.widget.Toast;

{

;

;

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_main);

accountEditText=(EditText)findViewById(R.id.username);

passwordEditText=(EditText)findViewById(R.id.password);

findViewById(R.id.login).setOnClickListener(newOnClickListener(){

publicvoidonClick(Viewv){

Stringaccount=accountEditText.getText().toString();

Stringpassword=passwordEditText.getText().toString();

if(account.equals("")||password.equals("")){

Toast.makeText(MainActivity.this,"賬號或密碼不能為空!",

Toast.LENGTH_SHORT).show();

}else{

ClientConServerccs=newClientConServer(MainActivity.this);

booleanb=ccs.login(account,password);

//如果登錄成功

if(b){

Toast.makeText(MainActivity.this,"登陸成功!",

Toast.LENGTH_SHORT).show();

}else{

Toast.makeText(MainActivity.this,"登陸失敗!",

Toast.LENGTH_SHORT).show();

}

}

}

});

}

}

然後在登陸以後添加一個監聽消息的監聽器,用來監聽收到的消息(代碼89、90行):

Java代碼

packagecom.example.openfiretest;

importjava.util.Collection;

importorg.jivesoftware.smack.Chat;

importorg.jivesoftware.smack.ChatManager;

importorg.jivesoftware.smack.ChatManagerListener;

importorg.jivesoftware.smack.ConnectionConfiguration;

importorg.jivesoftware.smack.MessageListener;

importorg.jivesoftware.smack.Roster;

importorg.jivesoftware.smack.RosterEntry;

importorg.jivesoftware.smack.RosterGroup;

importorg.jivesoftware.smack.XMPPConnection;

importorg.jivesoftware.smack.XMPPException;

importorg.jivesoftware.smack.packet.Message;

importandroid.content.Context;

importandroid.content.Intent;

importandroid.os.Handler;

importandroid.util.Log;

importandroid.widget.Toast;

publicclassClientConServer{

privatestaticintPORT=5222;

privateContextcontext;

publicClientConServer(Contextcontext){

this.context=context;

}

//這里收到消息後,通過廣播將消息發送到需要的地方.哈哈,既然收到了伺服器發送來的信息,如何處理自己決定。

privateHandlerhandler=newHandler(){

publicvoidhandleMessage(android.os.Messagem){

Messagemsg=newMessage();

msg=(Message)m.obj;

//把從伺服器獲得的消息通過廣播發送

Intentintent=newIntent("org.yhn.mes");

String[]message=newString[]{

msg.getFrom(),

msg.getBody()};

System.out.println("==========收到伺服器消息From==========="+message[0].toString());

System.out.println("==========收到伺服器消息Body==========="+message[1].toString());

intent.putExtra("message",message);

context.sendBroadcast(intent);

};

};

publicbooleanlogin(Stringa,Stringp){

ConnectionConfigurationconfig=newConnectionConfiguration("192.168.0.124",PORT);

/**是否啟用安全驗證*/

config.setSASLAuthenticationEnabled(false);

/**是否啟用調試*/

//config.setDebuggerEnabled(true);

/**創建connection鏈接*/

XMPPConnectionconnection=newXMPPConnection(config);

try{

/**建立連接*/

connection.connect();

/**登錄*/

connection.login(a,p);

/**開啟讀寫線程,並加入到管理類中*/

//ClientSendThreadcst=newClientSendThread(connection);

//cst.start();

//ManageClientThread.addClientSendThread(a,cst);

//獲取用戶組、成員信息。

System.out.println("======開始獲取組及用戶==========");

Rosterroster=connection.getRoster();

Collection<RosterGroup>entriesGroup=roster.getGroups();

System.out.println("組的個數:"+entriesGroup.size());

for(RosterGroupgroup:entriesGroup){

Collection<RosterEntry>entries=group.getEntries();

System.out.println("=========groupName==="+group.getName());

for(RosterEntryentry:entries){

//Presencepresence=roster.getPresence(entry.getUser());

//Log.i("---","user:"+entry.getUser());

System.out.println("組成員名字:"+entry.getName());

//Log.i("---","tyep:"+entry.getType());

//Log.i("---","status:"+entry.getStatus());

//Log.i("---","groups:"+entry.getGroups());

}

}

System.out.println("======結束獲取組及用戶==========");

//在登陸以後應該建立一個監聽消息的監聽器,用來監聽收到的消息:

ChatManagerchatManager=connection.getChatManager();

chatManager.addChatListener(newMyChatManagerListener());

returntrue;

}catch(XMPPExceptione){

e.printStackTrace();

}

returnfalse;

}

/**messagelistener*/

{

publicvoidchatCreated(Chatchat,booleanarg1){

chat.addMessageListener(newMessageListener(){

publicvoidprocessMessage(Chatarg0,Messagemsg){

/**通過handler轉發消息*/

android.os.Messagem=handler.obtainMessage();

m.obj=msg;

m.sendToTarget();

}

});

}

}

}

啟動android客戶端,進行登錄

然後在openfire的管理控制台,會話-工具中發送消息給所有在線用戶

即可看到列印信息:在管理控制台發送的消息

㈡ Android應用的伺服器端可以用C#寫嗎還是只能用java寫

Android應用的伺服器端是可以用C#寫的:
1、C#是微軟公司發布的一種面向對象的、運行於.NET Framework之上的高級程序設計語言。並定於在微軟職業開發者論壇(PDC)上登台亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、介面、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司 .NET windows網路框架的主角。

2、C#是一種安全的、穩定的、簡單的、優雅的,由C和C++衍生出來的面向對象的編程語言。它在繼承C和C++強大功能的同時去掉了一些它們的復雜特性(例如沒有宏以及不允許多重繼承)。C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程的支持成為.NET開發的首選語言。

3、C#是面向對象的編程語言。它使得程序員可以快速地編寫各種基於MICROSOFT .NET平台的應用程序,MICROSOFT .NET提供了一系列的工具和服務來最大程度地開發利用計算與通訊領域。

4、C#使得C++程序員可以高效的開發程序,且因可調用由 C/C++ 編寫的本機原生函數,因此絕不損失C/C++原有的強大的功能。因為這種繼承關系,C#與C/C++具有極大的相似性,熟悉類似語言的開發者可以很快的轉向C#。

㈢ android 編譯伺服器大概需要什麼配置 5

工欲善其事,必先利其器」,要想提高團隊整體的開發效率,盡可能的提前完成開發任務,必須要配備一套配置給力的開發設備。源碼編譯伺服器硬體配置的高低,直接影響著系統固件升級和ROM版本發布的速度和效率。

由於目前Google發布的最新版本的Android系統源碼體積越來越大,因此,越是定製高版本的系統,對編譯伺服器的硬體配置要求就越高,這里根據調研,給出目前Android
6.0及以下版本源碼定製開發的基本配置,供大家參考。

首先進行一波企業級android源碼編譯伺服器的推薦,這類推薦網上絕無僅有,這還是我進行了很久的調研,詢問很多朋友【其中包括不乏6年以上系統開發的大牛,也有之前公司的主管等】,也查了很多資料才挑選出來,提出需求後讓上級審批,目前上一級已經認可比審批,等待領導簽字。給力。

詳細

㈣ android開發中的伺服器端是什麼

伺服器是統稱,伺服器一半的pc都可以被稱作伺服器,但是伺服器上一半要跑服務,也就是tomcat、nginx等等這些東西,你如果跑服務的話,要搭建服務端的開發環境。

熱點內容
備胎壓縮胎 發布:2024-09-18 19:56:50 瀏覽:789
hypermesh加密網格 發布:2024-09-18 19:49:59 瀏覽:53
監控怎麼存儲 發布:2024-09-18 19:49:09 瀏覽:73
sql字元串轉換datetime 發布:2024-09-18 19:39:15 瀏覽:514
訪問平台慢 發布:2024-09-18 19:13:45 瀏覽:470
linux圖形顯示 發布:2024-09-18 19:12:51 瀏覽:818
ftp天網 發布:2024-09-18 19:03:41 瀏覽:46
tplink路由器重置了密碼是多少 發布:2024-09-18 19:01:03 瀏覽:720
密碼門的鑰匙在哪裡 發布:2024-09-18 19:00:21 瀏覽:932
pythondefer 發布:2024-09-18 18:42:20 瀏覽:521