1、Android開發中客戶端和伺服器端怎麼連接
首先你除了會安卓開發外要會javaweb或php等伺服器語言。然後給伺服器編寫對資料庫的操作和給app提供操作的介面,之後你的伺服器連接資料庫,你的app通過http等協議通過介面就能實現你想要的了。大概就是這樣的流程,一般在公司中伺服器的代碼不需要你寫。具體的不是三言兩語就能做好的,網上搜搜大神們的寫案例吧。
2、android需要學習伺服器端開發嗎
伺服器端的開發在安卓剛剛興起的時候,有一段時間非常熱門,後來因為承載的機器對服務版器的需求太低,導致權在14年之前顯得沒那麼重要,但是自從14年各類品牌的高端機不斷出現,伺服器短的開發才又火了起來,雖然現在起色不是很大,預計當手機的各項功能能和筆記本差不多的時候,才能真正需要伺服器端的開發
3、android開發用什麼從伺服器獲取數據
在android中有時候我們不需要用到本機的SQLite資料庫提供數據,更多的時候是從網路上獲取數據,那麼Android怎麼從伺服器端獲取數據呢?有很多種,歸納起來有
一:基於Http協議獲取數據方法。二:基於SAOP協議獲取數據方法,三:忘了-------
那麼我們的這篇文章主要是將關於使用Http協議獲取伺服器端數據,這里我們採取的伺服器端技術為java,框架為Struts2,或者可以有Servlet,又或者可直接從JSP頁面中獲取數據。
那麼,接下來我們便開始這一路程:
首先:編寫伺服器端方法,我這里採用的MVC框架是Struts2,目的很單純,就是為了以後做個完整的商業項目,技術配備為:android+SSH。當然,篇幅有限,我這里就直接用Strtus2而已。
伺服器端:新建WebProject ,選擇Java ee 5.0.
為了給項目添加Struts2的支持,我們必須導入Struts2的一些類庫,如下即可(有些jar包是不必的,但是我們後來擴展可能是要使用到的,就先弄進去):
1: xwork-core-2.2.1.1.jar
2: struts2-core-2.2.1.1.jar
3: commons-logging-1.0.4.jar
4: freemarker-2.3.16.jar
5: ognl-3.0.jar
6: javassist-3.7.ga.jar
7:commons-ileupload.jar
8:commons-io.jar
9:json-lib-2.1-jdk15.jar 處理JSON格式數據要使用到
10:struts2-json-plugin-2.2.1.1.jar 基於struts2的json插件
以上的jar包,需要放在WebRoot/WEB-INF/lib目錄下
然後在web.xml文件中敲下:
View Code
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- 定義Struts2的核心控制器:FilterDispatcher -->
<filter>
<!-- 定義核心Filter的名稱 -->
<filter-name>struts2</filter-name>
<!-- 定義Filter的實現類 -->
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
然後編寫struts.xml文件,並放在WebRoot/WEB-INF/lib目錄下:如下代碼:
View Code
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- setting encoding,DynamicMethod,language
<constant name="struts.custom.i18n.resources" value="messageResource"></constant>
-->
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
<!-- add package here extends="struts-default"-->
<package name="dongzi" extends="json-default"> <!--需要將struts-default改為json-default-->
<!-- setting action -->
<action name="login" class="com.dongzi.action.loginAction" method="login">
<result type="json"></result> <!--返回值類型設置為json,不設置返回頁面-->
</action>
</package>
</struts>
配置好後,我們再根據<action>標簽內容來編寫action。方法為method對應的login,類名為loginAction,
注意:包繼承為:json-default ,輸出結果類型為json
如下:
View Code
public class loginAction extends ActionSupport implements
ServletRequestAware,ServletResponseAware {
/**
*
*/
private static final long serialVersionUID = 1L;
HttpServletRequest request;
HttpServletResponse response;
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public void setServletResponse(HttpServletResponse response) {
this.response=response;
}
public void login(){
try {
//HttpServletRequest request =ServletActionContext.getRequest();
// HttpServletResponse response=ServletActionContext.getResponse();
this.response.setContentType("text/html;charset=utf-8");
this.response.setCharacterEncoding("UTF-8");
if(this.request.getParameter("username").equals("123456")){
this.response.getWriter().write("真的很奇怪,日本人!");
}else if(this.request.getParameter("username").equals("zhd")){
this.response.getWriter().write("沒有錯,我就是東子哥!");
}else{
this.response.getWriter().write("我就是東子哥!");
}
//將要返回的實體對象進行json處理
// JSONObject json=JSONObject.fromObject(this.getUsername());
//輸出格式如:{"id":1, "username":"zhangsan", "pwd":"123"}
// System.out.println(json);
// this.response.getWriter().write(json.toString());
/**
JSONObject json=new JSONObject();
json.put("login", "login");
response.setContentType("text/html;charset=utf-8");
System.out.println(json);
byte[] jsonBytes = json.toString().getBytes("utf-8");
response.setContentLength(jsonBytes.length);
response.getOutputStream().write(jsonBytes);
**/
/**
JSONObject json=new JSONObject();
json.put("login", "login");
byte[] jsonBytes = json.toString().getBytes("utf-8");
response.setContentType("text/html;charset=utf-8");
response.setContentLength(jsonBytes.length);
response.getOutputStream().write(jsonBytes);
response.getOutputStream().flush();
response.getOutputStream().close();
**/
} catch (Exception e) {
e.printStackTrace();
}
// return null;
}
}
運行查看下:http://localhost:8080/PDAServer/login.action?username=123456 當然你可以輸入其他參數的URL
4、Android app開發 搭建伺服器
首先,先別用花生殼,我之前用過,會攻擊電腦,ip被改的很奇怪。如果想讓外網訪問伺服器的話,可以試試美步。
然後,伺服器搭建伺服器方法挺多的,我現在是用MyEclipse+sqlserver2008,伺服器端寫jdbc代碼,生成json格式的數據,返回給客戶端,客戶端json解析得到數據顯示在UI上。json格式說白了就是一組組的字元串。
關機問題:你的電腦如果搭建了伺服器功能了,那你的那台電腦就已經是伺服器了,伺服器是一般是不會關機的,關機之後,客戶端當然不能再訪問伺服器了。
全部是根據自己的理解手打,希望幫到你。
5、android開發中的伺服器端是什麼?
伺服器是統稱,伺服器一半的pc都可以被稱作伺服器,但是伺服器上一半要跑服務,也就是tomcat、nginx等等這些東西,你如果跑服務的話,要搭建服務端的開發環境。
6、開發安卓app需不需要伺服器?
如果只是原生開發就不需要,如果只是用安卓做個客戶端的殼訪問伺服器式開發模式就需要
7、android伺服器端開發需要什麼技術?
你需要先搞明白什麼是服務端開發,了解下http協議,再結合自己的需求考慮使用哪種構架版。如果你是權想自己動手做,那麼先理清概念後,再找個稍有點經驗的技術詢問自己的需求用什麼做好。論壇和下單,跟套接字沒有關系,只需要web,http協議就可以了。
java的框架太重了,個人做的話沒有必要。
php當然可以啊,而且好學,好用,可以不用框架直接操作資料庫,多簡單啊。
python當然更好了,django框架,就沒那麼好學了。但是學了的話開發效率比php高多了。如果只是論壇和下單,不管哪種方式都很容易滿足,選一個你正在學的就OK。
8、android app 的伺服器端一般用什麼技術開發
你可以找本講android的書看看,我記得很多國內的書都會在最後講幾個實戰項目,涉及到版伺服器開發權,最後建議你Java伺服器開發框架可以用jfinal,實際上手機伺服器開發就是做網站,輸出的內容一般採用json,可以用httpService的形式,請求和響應,返回json給客戶端。
http://bbs.csdn.net/topics/390600099
9、android開發中,如何連接伺服器,從伺服器讀取到數據
答:
一,簡單應用 ,用 http 連接就可以。 就是用httpurlconnection 包就行
二,erp 應用,用 webservice,android 調用 webservice 實現連接伺服器。
三,我是.net和 java通吃,…^-^,還用一種辦法,就是用 .net framwork里的 WCF 也可以與android 通信,原理和webservice 差不多。
求加分。。。。。。。。
10、在Android開發中怎麼將手機作為伺服器
工具/原料
root軟體:百度root為佳!如果你已經獲取了許可權,可以跳過。
ksweb軟體:用於搭建手機php伺服器的軟體。
nat123軟體:強大的內網埠映射軟體,不需要路由器許可權。
方法/步驟
1.安裝手機本地php+mysql伺服器環境篇 :
1.1安裝ksweb軟體,安裝好ksweb後,會在手機上生成一個文件夾htdocs,其目錄是mnt/sdcard/htdocs,htdocs是網站的根目錄。
1.2安裝mysql 直接點擊mysql管理,點擊選擇「是」然後解壓便可自動安裝。mysql的賬號密碼隨後再改(在設置裡面更改)。
1.3安裝好MySQL之後,我們需要對ksweb進行一些設置方可更好使用。
1.3.1埠的更改步驟:(啟用root→更改80埠)手機伺服器啟用root,在ksweb設置裡面把root打鉤。
1.3.2開啟手機80埠方法:把8080埠改為80埠,並把PHP服務,MySQL都打勾。其他一些設置比如MySQL密碼,開機自啟動等選項大家根據需要自行修改即可!
1.4ksweb全部設置好後,我們打開手機本地伺服器地址localhost:80,表示設置好了。
我們點擊頁面中的「Enter KSWEB Web Interface」可以看到手機伺服器的一些配置信息(默認賬號密碼都是「admin」),表示手機服務搭建成功,一切正常!
2.利用nat123軟體進行內網80埠映射篇:
2.1注冊賬號,我們先到其官網注冊賬號官網,大家百度nat123即可。
2.2登陸並添加域名解析。
2.2.1 應用名稱,要搭建自己的博客,可以填XX的博客,或者XX的個人博客等。
2.2.2 內網埠,只有root的手機才填80埠。
2.2.3 內網地址這個默認localhost就行。
2.2.4 外網域名,如果沒有自己的域名,可以用官方免費的二級域名,注意格式,一切填好之後,點擊確認保存即可!
2.3 下載並安裝登陸安卓版的nat123,就自動解析了。
3.4 接下來在另一台電腦上輸入剛才的域名訪問,表示安卓手機web伺服器安裝成功,網站搭建成功!
注意事項
另外如果需要手機網站一直都可以訪問,需要下載一個永不關屏軟體,這樣手機就不會進入睡眠狀態,服務也不會停止,不過比較耗電。
外網能訪問內網手機web伺服器的關鍵是nat123埠映射功能,利用nat123埠映射功能,不只是搭建內網網站,還可以挖掘其他的許多用途。