十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
由于很多Android应用程序都需要服务器端的支持,所以掌握一些服务器端开发知识还是非常有必要的。至于选择哪一种服务器端知识进行学习,就比较麻烦了,因为技术的种类实在是太多了:Java EE/PHP/.NET/ruby on rails......可以选择自己比较擅长的服务器领域.
成都创新互联主要从事网站设计、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务武胜,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
PS:现在混合式开发比较火,而各大知名应用都相继铺开了h5模块,你比如QQ的游戏、购物等模块,微信更有微信模块开发。
PPS:现在最流行的h5框架是ionic。
它提供了很多 UI 组件来帮助开发者开发强大的应用,根本看不出混合应用和原生的区别;
它使用 JavaScript MVVM 框架和 AngularJS 来增强应用,提供数据的双向绑定,使用它成为 Web 和移动开发者的共同选择;
它是从web的角度开发手机应用,基于PhoneGap的编译平台,可以实现编译成各个平台的应用程序。可以说,你只用写一套代码,就可以适应多个平台,一次开发,处处运行,boss再也不用担心招不到苹果程序员了。
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作为服务器端,就是可以使用mina:
public class TcpServer {
public static void main(String[] args) {
NioSocketAcceptor acceptor = new NioSocketAcceptor();
try {
acceptor.setHandler(new IoHandler() {
@Override
public void sessionOpened(IoSession session) throws Exception {
// TODO Auto-generated method stub
// iosession 客户端的session
System.out.println("open");
}
@Override
public void sessionIdle(IoSession arg0, IdleStatus arg1)
throws Exception {
// TODO Auto-generated method stub
}
@Override
public void sessionCreated(IoSession arg0) throws Exception {
// TODO Auto-generated method stub
System.out.println("create");
}
@Override
public void sessionClosed(IoSession arg0) throws Exception {
// TODO Auto-generated method stub
System.out.println("close");
}
@Override
public void messageSent(IoSession arg0, Object arg1)
throws Exception {
// TODO Auto-generated method stub
}
@Override
public void messageReceived(IoSession session, Object content)
throws Exception {
// TODO Auto-generated method stub
System.out.println("object : " + content);
}
@Override
public void exceptionCaught(IoSession arg0, Throwable arg1)
throws Exception {
// TODO Auto-generated method stub
}
});
DefaultIoFilterChainBuilder chain = acceptor.getFilterChain();
chain.addLast("logger", new LoggingFilter());
chain.addLast("codec", new ProtocolCodecFilter(
new TextLineCodecFactory(Charset.forName("utf-8"))));
acceptor.bind(new InetSocketAddress(10003));
} catch (IOException e) {
e.printStackTrace();
}
}
}