Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

前言

很多初学Android的同学有一道坎就是不知道如何自己搭建后端、如何实现Android端与后端服务器端的通信,今天更一篇关于搭建服务端并与Android端通信的文章,旨在教会大家如何可以用最简单的步骤使我们的Android端与服务器端进行通信,服务端使用Python Flask,Android端使用Okhttp。

服务端

环境:服务端使用Python3.5 PyCharm

新建Flask项目

看图:

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

然后create,初始化完成之后项目结构应该类似如下:

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

其实这时候直接启动项目就可以在浏览器访问到:

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

这就是使用现成框架的好处hhh,但是我们希望实现与客户端的通信,自然需要再做进一步code.

编写代码接受来自客户端的数据

首先我们看一下hello_world的代码:

@app.route(\’/\’)def hello_world(): return \’Hello World!\’

这里@app.route(‘/’)意思就是访问你服务端地址时调用这个方法,所以我们可以通过这种方式实现自己的需求,比如:

@app.route(\’/demo\’, methods=[\’POST\’])def demo(): value = request.form[\’demo_tag\’] print(value) return \”ok\”

上面代码的意思就是你可以通过访问到demo方法,request.form[\’demotag\’]的返回值是你客户端发送的tag为demotag的数据,下文会详细介绍如何发送数据,最后返回值你可以自己指定,这里随便给了一个。到这里服务端已经ok了,我们看看客户端如何实现.

Android端

客户端使用Okhttp,需要导入两个jar包,地址jar包下载地址:http://square.github.io/okhttp

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

注意2个jar包都要,图中3个圈点完就ok了,下载到本地自己导入,这部分就不详细写了,不会导入的可以Google一下。

如果不想手动导入jar包可以:

​​ implementation \’com.squareup.okhttp3:okhttp:3.11.0\’

导入之后直接看代码:

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ok = findViewById(R.id.ok); username = findViewById(R.id.username); password = findViewById(R.id.password); ok.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String name = String.valueOf(username.getText()); String pass = String.valueOf(password.getText()); String url = \”http://112.86.199.151:5000/gesture\”;//替换成自己的服务器地址 SendMessage(url, name, pass); } }); } private void SendMessage(String url, final String userName, String passWord) { value = new float[550]; Random random = new Random(); for (int i = 0; i < 550; i ) { if (i % 2 == 0) { value[i] = random.nextFloat(); } else { value[i] = -random.nextFloat(); } } String str_value = FloatArrayToString(value); OkHttpClient client = new OkHttpClient(); FormBody.builder formBuilder = new FormBody.Builder(); formBuilder.add(\”demo\”, str_value); Request request = new Request.Builder().url(url).post(formBuilder.build()).build(); Call call = client.newCall(request); call.enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { runOnUiThread(new Runnable() { @Override public void run() { runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, \”服务器错误\”, Toast.LENGTH_SHORT).show(); } }); } }); } @Override public void onResponse(Call call, final Response response) throws IOException { final String res = response.body().string(); runOnUiThread(new Runnable() { @Override public void run() { if (res.equals(\”0\”)) { runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, \”失败\”, Toast.LENGTH_SHORT).show(); } }); } else { runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, \”成功\” res, Toast.LENGTH_SHORT).show(); } }); } } }); } }); }

我这里随机生成了一个数组并将其发送到了服务器端,核心代码很简单,完整的Demo项目源码可微信扫描下方二维码或者微信搜索“IT工匠”关注公众号后,后台回复“PF”获取。

Android开发之教你5分钟学会如何搭建后端-u0026实现前后端交互(android 后端)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年4月28日 上午10:57
下一篇 2023年4月28日 上午11:07

相关推荐

  • 美国真没钱了?将领怒斥研发部门:经费使用效率是中国二十分之一

    长年以来美国军费都是中国军费的数倍,而且美国的总体科技实力也强于中国。但是近几年来,中国在新式武器的研发装备方面突飞猛进,不但成功生产出了多条万吨大驱055型驱逐舰,还在高超音速导…

    科研百科 2022年7月25日
    237
  • 什么是PMS管理系统,什么是酒店PMS管理系统(酒店pms是啥意思)

    随着网络技术的日益进步,酒店行业对信息化、网络化、集团化、规范化的需求日益增加,酒店行业高品质,高效执行率,客户精细化定位深度营销对信息管理依赖程度加深,传统C/S架构酒店系统已无…

    科研百科 2023年7月31日
    259
  • 物料发送管理流程(物料发放管理流程)

    我始终坚信: 管理就是走流程 没有规范流程,管理一切为零 ★按流程来做 流程为各项工作提供程序化的流程 保证办事有指导 ★用制度来管 制度为企业运行制定规范化的制度 保证事事有规范…

    2022年5月26日
    331
  • 实施项目化管理人才工作化“虚”为实(实行项目化管理)

    原标题:我市开展争创“人才服务振兴优秀项目”活动成效显著 实施项目化管理人才工作化“虚”为实 本报讯 【记者 穆浩】 去年,辽宁三合酒业有限公司在第13届全国糖酒会G100超级葡萄…

    科研百科 2022年6月4日
    192
  • 电脑协同办公

    电脑协同办公:现代办公不可或缺的一部分 随着科技的不断进步,电脑协同办公已经成为现代办公不可或缺的一部分。无论是公司内部的协作,还是与客户、合作伙伴的交互,电脑协同办公都扮演着至关…

    科研百科 2024年8月31日
    123
  • 企业要想安全生产,这几点一定要到位(安全生产必须做到什么到位)

    企业安全生产管理工作,一直都是说起来容易,做起来难。如何实现安全生产,是一个老生常谈的问题,只有不断强化员工安全意识和自我防控能力,提高员工安全操作技能水平,保证安全生产工作规范、…

    2022年6月28日
    352
  • 科研项目研究类别怎么填写

    科研项目研究类别填写的重要性 随着科技的不断发展,科研项目的研究类别也越来越多样化。不同的研究类别有不同的目的和意义,因此在填写科研项目研究类别时,需要准确填写,以便更好地完成项目…

    科研百科 2024年10月11日
    10
  • 合同管理excel模板

    合同管理Excel模板 合同管理对于企业非常重要,可以帮助企业有效地管理合同,减少合同错误和纠纷,提高合同执行效率。以下是一个简单的合同管理Excel模板,可以帮助企业更好地管理合…

    科研百科 2024年8月25日
    34
  • h5 开发软件

    H5开发软件是一种用于创建和开发基于HTML5技术的应用程序的工具。随着移动互联网的快速发展,H5开发软件在移动应用开发领域变得越来越受欢迎。本文将介绍H5开发软件的定义、特点以及…

    科研百科 2023年7月21日
    182
  • 第三方项目管理

    第三方项目管理:从概念到应用 随着现代项目管理的日益复杂和多元化,第三方项目管理逐渐成为一种新兴的项目管理方法。这种方法不受组织内部项目管理方法的限制,而是依靠外部专业项目管理公司…

    科研百科 2024年7月16日
    67