android服务器_android添加服务器 - CSDN
  • 自己动手——快速搭建Android应用服务器

    万次阅读 多人点赞 2019-05-08 18:13:39
    Motivation 我写这套帖子的目的,是在自己学会、实现...我在学习编写自己的Android应用程序服务器的时候遇到过以下的问题: 1.我需要准备什么? 2.我该选择哪一套实现方案? …… 这些问题的搜索和查证都...


    Motivation

    我写这套博文的目的,是在自己学会、实现并熟练掌握之后,想帮助下面将会提到的这样一群正在学习Android的初学者,通过将自己的经验传递出去,让他们少走一点弯路,节省大量用在查询和翻阅资料上的时间。

    我在学习编写自己的Android应用程序服务器的时候遇到过以下的问题:
    1.我需要准备什么?
    2.我该选择哪一套实现方案?

    这些问题的搜索和查证都需要占用大量的时间,以至于初学者们手头的项目可能长达几个月没有进展,而我会一一为大家解决这些问题,你只需要花费看这一篇博文的时间。


    好了,言归正传:

    一、针对网站和APP的服务端程序的区别

    大部分的程序逻辑和代码结构都是一样的,仅仅在响应客户端请求时,针对浏览器返回的是用户需要看到的新的页面,而针对APP返回的是一段数据(如是否登录成功等),APP客户端根据这些数据再来跳转页面。


    二、我需要准备什么?

    硬件要求:

    一台用作服务器的联网电脑(可以购买云服务器或者用自己的PC)

    软件要求:

    安装JDK并配置完环境变量 (本套博文统一采用JDK 1.8)
    还有一些软件是需要用到的,到了具体的章节我们再引入。

    知识储备要求:

    1.基础Java知识和基础Java编程能力:

    也不需要对Java有多么深的理解,但是Java面向对象的三大要素——封装、继承、多态——至少要理解得清清楚楚!如果连静态方法和非静态方法都搞不清楚,那还怎么写程序?!

    2.计算机网络基础知识:

    对以下概念有较清晰的认识即可(不清楚的借一本计算机网络或者分条去查都可以快速搞明白):
    ①内网与外网;②局域网;③IP地址;④端口号;⑤Http请求;

    3.数据库相关知识:

    不会的必须找本书仔细学习一下。这个就不是随便查查就能懂的了。且有的知识(如范式)逻辑性较强,需要花时间认真学习。


    三、我该选择哪一套方案?

    在具有了一台联网电脑这一硬件条件后,我们的服务器仅仅有了一个容器,真正能让它工作起来的是一套软件相关的东西,那么我们就会去查,但是很遗憾,我们查到的99%的结果是网站服务器搭建,且博文1说A+B+C可以实现服务器,博文2又说A+D+E可以实现服务器…各种博文又抛出了一堆的框架。对于初学者来说,我就是交个毕设,或者仅仅需要支持一两个用户(自己和团队成员)的测试服务器,需要这么多概念吗?作为初学者到底应该学什么?

    以上的问题并非捏造,确实是博主之前面临到的问题,现在给大家一个“标答”:

    我们用:MySQL + Java Web + Tomcat + Volley 来实现我们的服务器。

    其中:
    ①MySQL是开源的数据库软件;
    ②Java Web是遵循Java语言风格的服务器应用程序组件(即客户端发来的请求的应答者);
    ③Tomcat是开源的服务器软件(作为Java Web应用程序的容器);
    ④Volley是谷歌官方为Android提供的Http请求库(写在Android客户端,用于向服务器端发送请求)。


    四、Android客户端发送Http请求和接收到应答的流程

    我来描述一下从Android客户端发出一趟请求到收到应答的过程(没图,但是我会说到各种图往往笼统和忽略的部分):

    1.客户端调用Volley请求函数向指定IP地址(或域名)的服务器发出一条Http请求(例如包含账号和密码的登录请求);

    2.服务器容器Tomcat收到Http请求,寻找相应Java Web编写的服务器应用程序,把请求分派给它来处理;

    3.Java Web编写的服务器应用程序找到处理请求相应的Servlet(Java Web项目的一部分,后面会讲)实例,把请求分配给它处理;

    4.Servlet根据请求来执行相应的操作(如调用数据库然后验证登录是否成功),将结果添加到应答中,发回客户端;

    5.客户端接收到应答,从应答中解析出结果(如登录是否成功),然后根据结果执行相应的逻辑(如跳转页面或提示账号密码不正确等)。


    五、基础实现

    实现的部分,我想分到多篇博文去讲各个部分的实现及其衔接。因此,下面用我每次测试自己APP时的流程来做个索引:

    1.启动内网穿透软件——内网穿透(2017.05.12)

    2.启动服务器软件和数据库软件

    ①服务器、数据库集成开发工具包(2017.05.13)

    ②MySQL数据库的建立(2017.5.18)

    ③Java Web的编写(2017.05.15)

    ④服务器端的一些测试方法(2017.05.19)

    3.启动APP,开始运行——Volley请求的编写(2017.07.01)


    六、进阶知识

    1.JSONObject与JSONArray(2018.04.12)

    2.Servlet请求调度器——DispatcherServlet(2018.04.14)

    3.Q&A


    更新日志

    这篇综述和索引的博文我就写到这了,去写几个分帖了,写出来之后我会第一时间在这里挂上链接,敬请期待。
    我的这套博文应该会在两周左右全部写完,如果是有紧急的问题需要帮助的朋友,直接回帖或者给我发邮件,在时间充足和我会的情况下帮你解决。
    ——2017.05.08

    实在是有些忙,今天忙里偷闲一天,写完了内网穿透的博文,已经在上面挂上了链接。我仔细想了一下,上面第二步可能需要三篇博文分别来讲服务器、数据库集成开发工具包的介绍,Java Web的编写和Tomcat的使用,之前吹牛说两周写完可能做不到了
    ——2017.05.12

    今早写了服务器、数据库集成开发工具包这篇文章,已经在上面挂上了链接。
    ——2017.05.13

    今天开始写Java Web的编写,写了之后才发现,这个确实挺麻烦的,各种细节需要各种截图,已经在上面挂上了链接,没写完,可以先看看前面的准备部分。
    ——2017.05.15

    今晚终于抽空写完了Java Web的编写, 诸君可以照葫芦画瓢,写自己的服务器程序了,博文有点长,进下心来慢慢看吧,绝对有收获!今天写着写着,又想到我好像没有规划MySQL建数据库的部分,就在索引中添上了。
    ——2017.05.17

    今天写完了MySQL数据库的建立,已经在上面挂上了链接。
    ——2017.05.18

    今天把Tomcat的一些使用方法写完了,写着写着突然忘了本来准备的内容了,略尴尬。
    ——2017.05.19

    今天终于把原计划的这最后一篇文章写完了,已经在上面挂上了链接。 原本计划两周写完的,这都拖了将近一个多月了。但是最近真的很忙,没办法。

    近期如果有空,我会写一篇番外文章,讲一点关于JSONObject和JSONArray的东西,应该会比较短,但是会很有用,尽请期待吧!
    ——2017.07.01

    根据各位开发者看完这套博文之后在开发过程中的反馈,今天对《内网穿透》、《Tomcat》和《Java Web》等三帖做了一些更新。
    ——2018.03.11

    时隔将近一年,我终于把承诺的JSONObject和JSONArray的部分写出来了,作为进阶使用的番外部分,已在上面挂上了链接。

    另外,今天写的尽兴的时候,想起了Servlet分配器这个东西,作为进阶内容的话还是很有意义与价值的。这次不会再跳票那么长时间了,一两天内完成,尽情期待!
    ——2018.04.12

    Servlet请求分派器的博文已经写完了,在上面挂上了链接。
    ——2018.04.14

    鉴于做整体的系统测试的时候,很难定位Bug出在了客户端还是服务端,我将《Tomcat的一些使用方法》这篇博文改名为《服务器端的一些测试方法》,并在里面添加了分享3。根据分享3,大家可以先写服务端,不写客户端,服务端测试正确了再开始写客户端,这样做的好处就是,我们可以更加精准的做到Bug定位了。
    ——2018.05.05

    今天做了一个重要的调整,即《MySQL》和《JavaWeb》两篇博文的次序,如果还是按我写它们时的顺序放在索引里,会造成你们逻辑的颠倒,因此,调了过来。
    ——2018.05.11

    根据近期自己在开发中的亲身经历和大家的反馈,写了一篇收集由PC和真实服务器环境的差异造成的Bug的博文,不光收集问题,也写了这些问题的解决方法。 大家在服务端出现Bug的时候可以点进去看看,有可能就对号入座,解决问题了,同时也鼓励各位开发者同仁,贡献出你们在开发过程中遇到的,各种各样的问题及其解决方案。
    ——2018.05.14

    为了便于索引和阅读,准备在所有的博文上加上目录,尤其是篇幅比较长的博文。
    ——2018.12.27

    近期发现有不止一个人问,non-static method 'XXX' can not be referenced from a static context这个异常怎么解决,怎样把XXX函数改成静态的?这就相当过分了。我也反省了一下是不是我这个教程写得太傻瓜式操作了。最后还是觉得,好东西也要看谁拿着。我再清清楚楚地声明一下:我这篇博文不是针对一点基础知识都没有的小白的,缺什么基础知识就去学完再来搞实践!!!
    ——2019.04.16

    今天对博文的内容和格式做了部分修改,同时根据近期开发和部署上遇到的一些问题,写了一篇新的博文用于记录软件版本差异造成的异常及其解决方案。
    ——2019.05.08


    后记

    目前,我们的网络知识体系对Android初学者实在是不太友好,首当其冲的问题就是不好查,作为初学者很难弄清针对APP的服务端和网站的服务端有多大的区别。 查到自己想要的知识相当不容易,各位大神写的也很零散。你写这一部分,他写那一部分,有的时候根本拼凑不到一起。因此,我在自己辛苦求索,花了近半个月把这一套东西弄通之后,写下了这一套博文。目的在于给和我处境类似的初学者们一些指引,让大家少走一些弯路。

    如果发现了代码或者理论方面的错误,请直接回复,我会尽快修改博文,避免误导了大家。

    如果在实现中出现了自己难以解决的问题,我的邮箱是implementist@outlook.com

    展开全文
  • 搭建服务器首先要创建一个web项目,因为我的开发工具JAVA EE-Eclipse,既可以搭建安卓项目,又可以搭建web项目,所以就直接使用了。如果没有Tomcat的话,可以在eclipse里面设置一下。下面制作一张动态图,是设置...

    搭建服务器首先要创建一个web项目,因为我的开发工具JAVA EE-Eclipse,既可以搭建安卓项目,又可以搭建web项目,所以就直接使用了。如果没有Tomcat的话,可以在eclipse里面设置一下。下面制作一张动态图,是设置Tomcat的过程,点击添加按钮,然后选择tomcat所在路径,导入即可。



    当设置完tomcat以后,就可以创建web项目了。

    我们这里假设已经创建好了web项目,现在把创建好的web项目代码贴出来。主要有两部分,一部分是web.xml配置文件,一部分是继承了httpServlet类的自己的业务类。

    web.xml配置文件如下:

    <?xml version="1.0" encoding="UTF-8"?>

    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

            xmlns="http://java.sun.com/xml/ns/javaee"

            xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

            http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

            id="WebApp_ID" version="3.0">

           <display-name>U8Servlet</display-name>

           <welcome-file-list>

                <welcome-file>index.html</welcome-file>

                <welcome-file>index.htm</welcome-file>

                <welcome-file>index.jsp</welcome-file>

                <welcome-file>default.html</welcome-file>

                <welcome-file>default.htm</welcome-file>

                <welcome-file>default.jsp</welcome-file>

            </welcome-file-list>


            <servlet>

                <servlet-name>testServlet</servlet-name>

                <servlet-class>test.TestServlet</servlet-class>

            </servlet>


            <!-- url-pattern中配置的/coreServlet用于指定该Servlet的访问路径 -->

            <servlet-mapping>

                <servlet-name>testServlet</servlet-name>

                <url-pattern>/testServlet</url-pattern>

            </servlet-mapping>

    </web-app>


    其中核心代码是<servlet>和<servlte-mapping>部分。<servlet>里面你的servlet名称和所指向的类。mapping中的url是要设置的访问服务器的路径。

    java代码部分如下图:

    package test;

    import java.io.IOException;

    import javax.servlet.ServletException;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    public class TestServlet extends HttpServlet {

              private static final long serialVersionUID = 1L;

             @Override

             protected void doGet(HttpServletRequest req, HttpServletResponse resp)

             throws ServletException, IOException {

                         System.out.println("doget方法是测试方法");

             }


            @Override

            protected void doPost(HttpServletRequest req, HttpServletResponse resp)

            throws ServletException, IOException {

            }

    }

    这时候服务器端就配置完了,现在验证一下,通过本机的网页是否可以访问到服务器地址。打开网页,输入位置的url。在这里需要查看一下服务器的端口,如果端口写错的话,会访问不到。查看服务器端口的方法是:双击Tomcat7.0,跳转到服务器配置的界面,可以看到端口号



    本机访问的地址为“http://localhost:8088/U8Servlet/testServlet”,其中U8Servlet为项目的名称,testServlet为web.xml文件中配置的路径。当你访问的时候,因为是无参访问,所以就会走doGet方法。如果能走到doGet方法里,说明服务器搭建成功了、


    展开全文
  • 1.使用到的开发工具为:Eclipse(Java EE),Android Studio,MYSQL 5.7.21; 2.首先在MYSQL数据库建表,我这里使用的数据库可视化操作软件为:navicat premium: 如图: 这里你可以取自己喜欢的数据库名字,...

    1.使用到的开发工具为:Eclipse(Java EE),Android Studio,MYSQL 5.7.21;

    2.首先在MYSQL数据库建表,我这里使用的数据库可视化操作软件为:navicat premium:

    如图:

    这里你可以取自己喜欢的数据库名字,但是为了方便起见,我建议取跟我的一样,当然,phone、email、message和pic这几个字段你可以不添加,因为这个demo里面根本不会使用到。

    2.创建服务器端的项目工程,当你需要做到这个demo时,我已经默认你已经成功搭建好了环境,name进入正题:

    a.工程目录如下:

    记得首先先导入jdbc连接mysql数据库的jar包!!!

    记得也要先配置好tomcat服务器!!!

    jsp页面如下(源代码都在文章后面的链接):

    输入账号为:5555,密码为:5555时(这是之前建表时插入的数据),点击login后:

    这里显示的login successfully!就是服务器返回给android的信息,也就是android端向我们搭建的服务器提交账号密码后返回给android端的信息!

    若输入的账号密码在member中不存在,则:

    这要注意一点,mustLogin是使用到了servlet的知识,其中web.xml配置如下:

    这就是服务器端的项目开发的一个简单的介绍。后面源代码会给出。

    3.Android端的开发:

    工程目录如下:

    页面的话:

    设计的很简单,这里我要说的是我做的只是一个简单的demo,布局比较简单,想要更美观的话可以上网百度一下设置颜色和布局。

    其实android连接服务器并没有想象的那么难,就是提交数据,返回信息这两个方面而已,现在csdn上的代码基本都是很久之前的或者没有详细的讲解,或者源代码的下载积分特别高,我的源代码下载积分,一定是最低的!

    最后贴上登录成功的图片:

    我这是在真机上成功实现了的,具体怎么连接真机实验,你可以百度,度娘真的很管用。

    还有呢就是,如果要实现注册功能的话,这里提供一个思路:其实也挺简单的如果你学会了登录功能的实现,只需要在登录页面中添加一个Button,再新建一个活动,填写注册信息,然后将注册信息提交给服务器,然后再在服务器端新建一个servlet处理接收到的注册信息,也就是将数据插入到我们建好的数据表中,跟登录差不多.......

    最后我建议,如果你看不懂源代码,你可以先上网学习一下httpurlconnection的工作原理。

    最后重申:AndroidTest是服务器端项目,Httptest是Android端项目,别搞混了。有什么不懂的话,可以在评论区给我留言,看到会回复的。

    源代码点击此链接:https://download.csdn.net/download/qq_38442065/10345368

    Navicat数据库可视化操作工具:https://download.csdn.net/download/qq_38442065/10345371

    GitHub:服务器端:https://github.com/Gahui-Liao/AndroidTest.git

                   Android端:https://github.com/Gahui-Liao/HttpTest.git

    展开全文
  • 搭建Android上的服务器

    千次阅读 2019-09-09 07:21:22
    在手机端搭建了一个服务器。 手机端的Server利用的是该库: https://github.com/koush/AndroidAsync 先把服务器搭起来 依赖库 首先,依赖下我们搭建Server需要用到的库: compile '...

     

    如何通过浏览器输入一个地址播放手机上的视频?

    在手机端搭建了一个服务器。

     

    手机端的Server利用的是该库:

    先把服务器搭起来

    依赖库

    首先,依赖下我们搭建Server需要用到的库:

    compile 'com.koushikdutta.async:androidasync:2.+'

    编写简易html

    然后我们在assets下编写一个html文件用于浏览器访问,index.html

    最简单的即可:

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
    </head>
    
    <body>
    
    嘿嘿嘿,连通了...
    
    </body>
    
    </html>

    启动服务,监听端口

    public class MainActivity extends AppCompatActivity {
        private AsyncHttpServer server = new AsyncHttpServer();
        private AsyncServer mAsyncServer = new AsyncServer();
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
    
            server.get("/", new HttpServerRequestCallback() {
                @Override
                public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
                    try {
                        response.send(getIndexContent());
                    } catch (IOException e) {
                        e.printStackTrace();
                        response.code(500).end();
                    }
                }
            });
    
            server.listen(mAsyncServer, 54321);
    
        }
    
        @Override
        protected void onDestroy() {
            super.onDestroy();
    
            if (server != null) {
                server.stop();
            }
            if (mAsyncServer != null) {
                mAsyncServer.stop();
            }
        }
    
        private String getIndexContent() throws IOException {
            BufferedInputStream bInputStream = null;
            try {
                bInputStream = new BufferedInputStream(getAssets().open("index.html"));
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                int len = 0;
                byte[] tmp = new byte[10240];
                while ((len = bInputStream.read(tmp)) > 0) {
                    baos.write(tmp, 0, len);
                }
                return new String(baos.toByteArray(), "utf-8");
            } catch (IOException e) {
                e.printStackTrace();
                throw e;
            } finally {
                if (bInputStream != null) {
                    try {
                        bInputStream.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }
        }
    }

    可以看到很简单,创建AsyncHttpServer对象,我们在onCreate中调用get,对外设置一个get型的url监听,监听的url是/即根目录。

    然后调用listen,传入端口号54321,开启对该端口的监听。

    onDestroy的时候停止服务器。

    当捕获到对”/”的访问时,读取assets下的index.html返回给浏览器。

    记得添加网络权限。

    好了,运行demo,测试一下。

    输入地址,你的手机的IP:端口号。

    注意电脑和手机在同一个网段!

    然后你应该看到如下效果图:

     

    完善Demo

    接下来,我们将手机上的mp4返回让其在浏览器上显示。

    很简单,既然我们可以监听/,返回一个index.html,我们就能监听另一个url,返回文件目录。

    server.get("/files", new HttpServerRequestCallback() {
        @Override
        public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
            JSONArray array = new JSONArray();
            File dir = new File(Environment.getExternalStorageDirectory().getPath());
            String[] fileNames = dir.list();
            if (fileNames != null) {
                for (String fileName : fileNames) {
                    File file = new File(dir, fileName);
                    if (file.exists() && file.isFile() && file.getName().endsWith(".mp4")) {
                        try {
                            JSONObject jsonObject = new JSONObject();
                            jsonObject.put("name", fileName);
                            jsonObject.put("path", file.getAbsolutePath());
                            array.put(jsonObject);
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }
            response.send(array.toString());
        }
    });

    我们监听/files这个Url,然后返回Sdcard根目录的视频文件,拼接成JSON返回。

    这里如果你重新启动,在浏览器上输入:

    http://192.168.1.100:54321/files

    会看到一堆JSON数据:

    但是我们需要在刚才的html上显示,所以这个请求应该是刚才的Html页面发起:

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <script src="jquery-1.7.2.min.js" type="text/javascript"></script>
    
        <title>文档的标题</title>
        <script type="text/javascript">
            $(function() {
                var now = new Date();
                var url = 'files' + '?' + now.getTime();
                // 请求JSON数据
                $.getJSON(url, function(data) {
                    // 编辑JSON数组
                    for (var i = 0; i < data.length; i++) {
                        // 为每个对象生成一个li标签,添加到页面的ul中
                        var $li = $('<li>' + data[i].name + '</li>');
                        $li.attr("path", data[i].path);
                        $("#filelist").append($li);
    
                    }
                });
            });
    
        </script>
    </head>
    
    <body>
        <ul id="filelist" style="float:left;"></ul>
    
    </body>
    
    </html>

    可能很多朋友没了解过js,不过应该能看明白,$.getJSON获取返回的JSON数组,然后遍历为每个Json对象生成一个li标签,添加到页面上。

    这里用了jquery,对于js的也需要也请求处理,这里省略了,很简单,看源码即可。

    此时访问,已经可以显示出视频目录了:

     

    接下来就是点击播放了,在html里面有个标签叫video用于播放视频的,他有个src属性用于设置播放的视频路径。

    所以我们要做的仅为:

    • 点击名字,拿到该视频对应的url,然后设置给video的src属性即可。

    那么视频的url是什么?

    刚才我们返回了视频的路径,所以我们只要再监听一个url,将根据传入的视频路径,将视频文件流返回即可。

    server.get("/files/.*", new HttpServerRequestCallback() {
        @Override
        public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
            String path = request.getPath().replace("/files/", "");
            try {
                path = URLDecoder.decode(path, "utf-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
            File file = new File(path);
            if (file.exists() && file.isFile()) {
                try {
                    FileInputStream fis = new FileInputStream(file);
                    response.sendStream(fis, fis.available());
                } catch (Exception e) {
                    e.printStackTrace();
                } 
                return;
            }
            response.code(404).send("Not found!");
        }
    });

    我们又监听了一个url为files/xxx.*,捕获到之后,拿到文件名,去SDCard找到该文件,返回文件流即可。

    html端的代码为:

    <script type="text/javascript">
        $(function() {
            var now = new Date();
            // 拿到video对象
            var $video = $("#videoplayer");
            var url = 'files' + '?' + now.getTime();
            $.getJSON(url, function(data) {
                for (var i = 0; i < data.length; i++) {
                    var $li = $('<li>' + data[i].name + '</li>');
                    $li.attr("path", data[i].path);
                    $("#filelist").append($li);
    
                    // 点击的时候,获取路径,设置给video的src属性
                    $li.click(function() {
                        var p = "/files/" + $(this).attr("path");
                        $video.attr("src", "/files/" + $(this).attr("path"));
                        $video[0].play();
                    });
                }
            });
        });
    
    </script>

    当然页面上body标签内部也多了一个video标签。

     <video id="videoplayer" controls="controls">
     </video>

    到这里,所以的代码就介绍完了~~

    小结

    回头看,其实就是app中启动服务器,监听一些url,然后针对性的返回文本、json、文件流等。

    当然了,可以做的时候也挺多的,甚至可以做个PC版本的文件浏览器。

    可能有很多人对html,js不太熟悉,不过还是建议简单了解下,或者敲一下本例,因为本例代码很少,值得作为上手教程。

    源码地址:https://github.com/suyimin/ShowPhoneMp4

     

    展开全文
  • Android服务器——TomCat服务器的搭建

    万次阅读 多人点赞 2016-05-03 09:36:37
    Android服务器——TomCat服务器的搭建 作为一个开发人员,当然是需要自己调试一些程序的,这个时候本地的服务器就十分方便了,一般都会使用TomCat或者IIS服务器,IIS就比较简单了,其实tomcat也是很简单的,接下来...
  • Android实现服务器登录

    千次阅读 2018-09-30 17:12:18
    Android实现服务器登录 一、使用MyEclipse创建一个servlet service project服务;( 在创建服务器时一定要创建servlet service project,不能创建servlet project)代码如下: package login; import java.io...
  • Android的连接服务器

    千次阅读 2018-03-21 21:38:47
    网络地址的获取1. 创建方法, 网络地址的获取开发步骤:3. 访问网络是一个敏感的操作 需要网络使用的权限java.net.SocketException:socket failed: EACCES (Permission denied)在AndroidManifest.xml文件中,配置使用...
  • Android程序员搭建一个属于自己的服务器

    万次阅读 多人点赞 2019-08-12 06:41:53
    搭建服务器需要些什么工作 本文所介绍的服务器都是入门级别的,适合移动端同学自己搭建玩玩,还没有达到商业开发水平,大牛请莫见怪。 我们搭建服务器主要有以下几个步骤: 1.搭建开发环境,Intellig + spring-...
  • Android怎么从服务器端获取数据

    千次阅读 2019-05-27 11:09:29
    android中有时候我们不需要用到本机的SQLite数据库提供数据,更多的时候是从网络上获取数据,那么Android怎么从服务器端获取数据呢?有很多种,归纳起来有 一:基于Http协议获取数据方法。二:基于SAOP协议获取...
  • Android 做web服务器

    千次阅读 2019-12-05 16:14:06
    要确定其发布页面的语言就要找到他发布的服务器中页面所在的位置,之前说服务器需要存储卡才可以发布服务,所以目标锁定在Android文件系统的sd卡。 打开eclipse,然后启动虚拟机,找到虚拟机的文件管理器,如图 ...
  • Android服务器

    2020-06-23 14:18:48
    Android作为web服务器前言新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants...
  • 使用Eclipse搭建简易Android服务器

    万次阅读 2015-07-31 12:14:49
    一直都想做一些自己的app奈何多数功能都需要借助于服务器才能实现,... 这篇文章只是简单介绍下如何使用Java搭建Android服务器,刚学习不久,有不足之处欢迎指出,共同进步!  一、环境搭建  1、 所需软件列表  
  • Android服务器时间校准

    千次阅读 2014-03-03 13:31:23
    Android服务器时间与客户端时间的校准 由于Android的时间可以由用户调整,然后有时候时间的同步的需求,所以如何进行时间与服 务器的校准可能就是一个比较恶心的问题。 之前想到的比较简单(单位为毫秒),大概...
  • Android服务器端开发

    千次阅读 2016-09-16 16:00:14
    Android服务器端开发 html/css:制作静态页面 servlet:动态页面 看界面与服务器之间有没有数据的交互 Web开发里面的模式 C/S:客服端/服务器端 优点:安全性高,客户端是可以分担服务器端的一些功能模块 ...
  • Android服务器——使用TomCat实现软件的版本检测,升级,以及下载更新进度! 算下来,TomCat服务器已经写了很长一段时间了,一直说拿他来搞点事情,也一直没做,今天刚好有空,交流群还有人请教,就寻思着把一些...
  • Android服务器环境apk打包shell脚本

    千次阅读 2019-03-16 10:02:38
    背景:18年底入职一家创业4年的公司,除去丢弃的一款购物类...从开发手里接过测试环境,连终端App打包服务器,都可以自己打包,即使开发在jenkins集成自动打包发包,android打包工具gradlew: #!/bin/sh read -p...
  • Android 服务器向客户端推送方案

    千次阅读 2014-04-14 18:55:51
    1.C2DM(现在是GCM)
  • Android服务器之SFTP上传下载功能的实现
  • 将war包部署到android服务器

    千次阅读 2016-05-30 09:30:13
    android系统上安装i-jetty(servlet容器),可以将android手机当成一个服务器使用。 1、下载i-jetty,安装; 2、编写servlet并打成war包; 3、将war包里的classes和lib分别复制到D:\Android\android-sdk-...
  • 1.已经安装JDK环境 2.tomcat下载安装(windows为例,根据系统选择位数) ... 本例解压到G盘,注意目录...3.双击startup.bat后,本地服务器已经搭建起来,浏览器中输入http://localhost:8080/,如果出现以下界面说明安装成功
1 2 3 4 5 ... 20
收藏数 233,559
精华内容 93,423
关键字:

android服务器