编辑器:HBuiderX、PyCharm

主要技术:5+App、python

HBuiderX 下载地址:http://www.dcloud.io/hbuilderx.html

PyCharm 下载地址:http://www.jetbrains.com/pycharm/?fromMenu

python 下载地址:https://www.python.org/

5+App是HBuiderX下面的一个支持跨平台App项目,全称:HTML5 Plus,是一种基于HTML、JS、CSS编写的运行于手机端的App,这种App可以通过扩展的JS API任意调用手机的原生能力,实现与原生App同样强大的功能和性能。

第一步进行后台接口编写

python只提供接口+业务处理

from flask import Flask, make_response  引入路由模块,提供外部访问的接口,make_response 处理返回结果

app.run(host="0.0.0.0", port="5000", debug=True)表示同一局域网任何ip都可以访问,访问端口为:5000,允许调试模式。

from flask import Flask, make_response
from flask_cors import cross_originapp = Flask(__name__)
uName = "admin"
uPwd = "admin"
status = ""# 登陆函数( REST RESTful:接受参数,访问类型可以为:get、post)
@app.route("/login/<account>/<password>", methods=['GET', 'POST'])
@cross_origin()
def get_content(account, password):if uName.__eq__(account) and uPwd.__eq__(password):status = "200"rst = make_response(status)#处理请求头部rst.headers['Access-Control-Allow-Origin'] = '*'return rststatus = "0"rst = make_response(status)rst.headers['Access-Control-Allow-Origin'] = '*'return rstif __name__ == '__main__':app.run(host="0.0.0.0", port="5000", debug=True)

这个时候我们已经可以通过浏览器去测试python接口是否正常。

我们先打开命令窗口查询一个本地ip地址,后面有用到

win+r,输入cmd,输入ipconfig,查看ip地址

查看完自己的IPv4地址,打开浏览器访问

示例:http://192.168.0.230:5000/login/admin/admin

http://ip地址:端口/登陆接口的名称/用户名/密码

返回状态码:200表示成功,0表示失败。

成功之后,就可以搭建在HBuilderX搭建app项目

第二步搭建app环境

如何搭建+5App项目请自行百度

创建好项目之后我们写一个登陆的App,使用python进行验证。

login.html登陆模板

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /><title></title><link href="css/mui.min.css" rel="stylesheet" /><link href="css/style.css" rel="stylesheet" /><style>.area {margin: 20px auto 0px auto;}.mui-input-group {margin-top: 10px;}.mui-input-group:first-child {margin-top: 20px;}.mui-input-group label {width: 22%;}.mui-input-row label~input,.mui-input-row label~select,.mui-input-row label~textarea {width: 78%;}.mui-checkbox input[type=checkbox],.mui-radio input[type=radio] {top: 6px;}.mui-content-padded {margin-top: 25px;}.mui-btn {padding: 10px;}.link-area {display: block;margin-top: 25px;text-align: center;}.spliter {color: #bbb;padding: 0px 8px;}.oauth-area {position: absolute;bottom: 20px;left: 0px;text-align: center;width: 100%;padding: 0px;margin: 0px;}.oauth-area .oauth-btn {display: inline-block;width: 50px;height: 50px;background-size: 30px 30px;background-position: center center;background-repeat: no-repeat;margin: 0px 20px;/*-webkit-filter: grayscale(100%); */border: solid 1px #ddd;border-radius: 25px;}.oauth-area .oauth-btn:active {border: solid 1px #aaa;}.oauth-area .oauth-btn.disabled {background-color: #ddd;}</style><script type="text/javascript">document.addEventListener('plusready', function(){//console.log("所有plus api都应该在此事件发生后调用,否则会出现plus is undefined。"});</script>
</head>
<body><header class="mui-bar mui-bar-nav"><h1 class="mui-title">登录</h1></header><div class="mui-content"><form id='login-form' class="mui-input-group"><div class="mui-input-row"><label>账号</label><input id='account' type="text" class="mui-input-clear mui-input" placeholder="请输入账号"></div><div class="mui-input-row"><label>密码</label><input id='password' type="password" class="mui-input-clear mui-input" placeholder="请输入密码"></div></form><div class="mui-content-padded"><button id='login' class="mui-btn mui-btn-block mui-btn-primary">登录</button></div></div></div></body>
</html>

点击登陆触发的事件:此代码块写在document.addEventListener('plusready', function(){});的下面

注意:ajax的url:换成浏览器访问成功的地址,(account.value表示App输入的用户名,password.value表示App输入的密码

                // 登陆的点击事件$(function(){var account = document.getElementById("account")var password = document.getElementById("password")var login_Btn = document.getElementById("login")login_Btn.addEventListener("click",function(){$.ajax({"type" :  "get","url"  :  "http://192.168.0.230:5000/login/"+account.value+"/"+password.value,"dataType" : "json",success :  function(data){if(data == "200"){//响应码:200响应成功window.location.href = "index.html"}else{alert("用户名密码不匹配!");}},error : function(){alert("服务器内部出错!");}})})})

首页模板:只在顶部显示一下主页,用于区分是否跳转

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /><title></title><link href="css/mui.min.css" rel="stylesheet" /><link href="css/style.css" rel="stylesheet" /><script type="text/javascript">document.addEventListener('plusready', function(){//console.log("所有plus api都应该在此事件发生后调用,否则会出现plus is undefined。"});</script>
</head>
<body><header class="mui-bar mui-bar-nav"><h1 class="mui-title">主页</h1></header></body>
</html>

当你看到这里的时候,后面就已经没有代码了,搭建一下手机运行环境就好

第三步搭建手机运行环境

打开5+App项目中的manifest.json,修改基础配置里面的应用入口页面地址,也就是我们手机刚打开app显示的页面。

修改为login.html

之后,我们需要把手机设置为开发者模式,如何设置自行百度,因为手机型号不同设置方式也不同。

开发者选项中,打开usb调试,usb安装。

手机和电脑保持在同一个局域网下,连接usb

最后,在菜单栏里的运行、运行到手机或模拟器,选择运行设备,就可以测试app是否正常运行。

手机app里的登陆首页,填写用户名和密码进行测试。

测试结果,显示主页,表示可以通过ajax去调用python的后台代码

博主是个弱鸡,欢迎大家来指导。

使用python做手机app后台相关推荐

  1. 利用PHP语言开发手机app后台服务器的框架是什么?或者说开发流程是怎么样的?

    最近正在做一个手机APP的服务端API开发,虽然是基于Ruby on Rails的,做的也不太专业,不过大致相通,希望能够给你一些启发. 首先,如果是比较简单的手机APP,例如新闻客户端这样的 不会涉 ...

  2. Python 操控手机 APP

    From:https://www.cnblogs.com/7758520lzy/p/11994776.html Python 控制雷电模拟器:https://blog.csdn.net/zerglur ...

  3. python手机版怎么用-如何用Python操控手机APP攻略!建议收藏!很全面

    最近经常看到用Python操作手机APP的项目,例如抖音.闲鱼之类的,看完后发现这些项目无一例外需要部署ADB环境.至于什么是ADB,很多大神都讲过,只是写得比较专业,我等菜鸟看完还是云里雾里. 为了 ...

  4. 用Python操控手机APP攻略一

    [转自https://mp.weixin.qq.com/s/m5NVrayleQWztpJNbZ7mEA为了防止文章失效特此备份] 史上最全的用Python操控手机APP攻略!建议收藏! 原创 大刘  ...

  5. 如何用Python操控手机APP攻略!建议收藏!很全面

    最近经常看到用Python操作手机APP的项目,例如抖音.闲鱼之类的,看完后发现这些项目无一例外需要部署ADB环境.至于什么是ADB,很多大神都讲过,只是写得比较专业,我等菜鸟看完还是云里雾里. 为了 ...

  6. 史上最全的用Python操控手机APP攻略!建议收藏!

    最近经常看到用Python操作手机APP的项目,例如抖音.闲鱼之类的,看完后发现这些项目无一例外需要部署ADB环境.至于什么是ADB,很多大神都讲过,只是写得比较专业,我等菜鸟看完还是云里雾里. 为了 ...

  7. python教程app攻略_一篇清晰易懂的Python操控手机APP攻略!

    阅读全文大概需要 9 分钟. 最近由于一直处于在家远程办公状态,新的一年,很多公司.部门事情要处理,比较忙,公号原创文的创作速度明显减慢!亲爱的读者们,你们都等着急了吧. 最近经常看到许多公号在推一些 ...

  8. python操作手机app超详细步骤

    〝 古人学问遗无力,少壮功夫老始成 〞 python操作手机app超详细步骤,现在很多app的都要刷经验打怪升级啥的,这些枯燥千篇一律但是很耗费时间的玩法,可以使用app自动去操作,解放双手,释放时间 ...

  9. python开发app的软件_如何利用python开发手机app

    python语言虽然很万能,但用它来开发app还是显得有点不对路,因此用python开发的app应当是作为编码练习,加上目前这方面的模块还不是特别成熟,bug比较多. 准备工作 利用python开发a ...

  10. python做手机应用宝下载_20行Python代码爬取下载应用宝所有APP软件

    基本环境配置 python 3.6 pycharm requests parsel 打开开发者工具分析网页 你怎么知道这个就是下载地址呢? 1.选择一个应用的下载地址 2.打开开发者工具,清空数据,选 ...

最新文章

  1. Clipboard类summary
  2. 单例模式中的懒汉式以及线程安全性问题
  3. Effective.Java第23-33条(泛型相关)
  4. 关于软件测试第一次作业的几处提示
  5. 香港商务及经济发展局长:看好物联网发展
  6. java的集合应用_Java之集合类应用总结
  7. 【原】PSD图标素材的全自动切图方法,适用于IOS、安卓、web前端等领域
  8. 如何用好消息推送(push)做APP运营
  9. “APP杀手”?微信小程序瞬间原形毕露
  10. cmake ..是什么意思
  11. ESET Smart Security 3.0667与WindowsXP Sp3冲突
  12. python字符串以什么为结束符_Python代码中 如何判断字符串是否使用指定字符结尾(endswith)呢?...
  13. 财税打印机LQ 670K+ win10驱动
  14. poi excel密码加密
  15. oracle查看日期是第几周
  16. arcgis直方图工具在哪_这些分析工具都分不清?别说你懂数据分析!
  17. 《醒了自悟》--离别感言
  18. Android屏幕截图实现
  19. excel工具栏隐藏了怎么办_Office2016基础教程第一章:认识Excel #excel #职场 #办公技巧...
  20. Laplacian matrix(转)

热门文章

  1. Unity3D 2021版本使用MonoDevelop代码编辑器
  2. Yarn的资源管理机制
  3. Oracle随机抽样sample使用说明
  4. Caesar加密与解密
  5. Android 开机权限默认授予Runtime权限
  6. DataX工具的基本使用
  7. 你的工作有价值吗?——如何在工作最大程度地体现自己的价值?
  8. 命令行视频下载工具-dl
  9. 配置Eureka-client报EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT...
  10. top命令输出解释以及load average 详解及排查思路