以 Django 作为后端的 Android/iOS 应用程序

2024-02-13

我有一个用 Django 构建的网站项目,想为其构建一个移动应用程序。我做了很多研究,但很困惑native and hybrid应用程序。我的项目基本上是 Quora 的克隆,只是一个大学项目。我也看到了PhoneGap, Ionic and Sencha但我真的很困惑它们如何适合。我必须使用Ionic with PhoneGap或 Apache Cordova 或只是Ionic?结构是什么?我应该从哪里开始?


TL;DR: 从...开始Ionic http://ionicframework.com/getting-started/。 Ionic 在“底层”使用 Cordova。不需要 PhoneGap 或 Sencha,所以不要对此感到困惑。

免责声明:这听起来像广告,所以我不得不说我与 Ionic 没有任何关系,我只是碰巧非常喜欢它,所以我分享了对它的热爱。

让我们一步一步来:

什么是离子?

Ionic 是一个用于构建混合移动应用程序的框架,它构建在一个生态系统上,其中包括 Angular 作为 Web 应用程序框架,并使用 Cordova 来构建和打包本机应用程序。 Ionic 创建了一个可以通过应用程序商店安装的本机移动应用程序,并包含所谓的 WebView(本质上是一个独立的浏览器窗口)以及 JavaScript API,Web 应用程序将在其中运行。

什么是混合移动应用程序?

如果您是一名 Web 开发人员,那么您对 ​​HTML、CSS 和 JavaScript 有相当的了解。此外,您很可能正在使用当今稍微流行的框架之一,例如 AngularJS。直到最近,如果您想为(当前)两种最流行的移动操作系统 iOS 和 Android 制作应用程序,您唯一的选择就是制作所谓的本机应用程序使用目标平台本身的 SDK。当然,这意味着您需要制作两个版本的应用程序 - 分别适用于 iOS 和 Android。如果您是一名独立开发人员,那么您精通两者的机会就不那么高了。

如今,幸运的是,借助 Ionic Framework,您可以使用 Web 开发人员已有的技能来创建一个应用程序,然后将该代码库作为应用程序部署到 iOS 和 Android 商店。那有多酷,对吧?因此,混合是因为它是一个“简单”的 Web 应用程序,使用所谓的 WebView 封装在本机应用程序中。

为什么 Ionic 很酷?

Ionic 很棒,因为它“不仅仅是”一个框架。相反,它有一个围绕它构建的整个生态系统。例如,Ionic 允许您:

  • 生成图标和启动画面 http://www.nikola-breznjak.com/blog/ionic/create-icons-and-splash-screen-automatically-with-ionic-resources/使用单个命令即可适用于所有设备和设备尺寸:ionic resources。仅此一项就可以为您节省至少一天的时间来准备各种尺寸的图像。
  • 即使直接在您的设备上运行,也可以通过代码更改立即更新您的应用程序ionic run --livereload
  • 并行构建和测试 iOS 和 Android 版本,并立即查看更改ionic serve --lab
  • 与世界各地的客户、客户和测试人员共享您的 Ionic 应用程序,而无需通过 App Storeionic share
  • 使用 ngCordova 轻松访问设备的完整本机功能(在这里您可以使用任何 Cordova 插件 - 所以 Ionic 确实比 Cordova 本身要强大得多)
  • 此外,他们(Ionic 团队)正在为您的 Ionic 应用程序构建全栈后端​​服务和工具,例如Deploy http://www.nikola-breznjak.com/blog/ionic/ionic-deploy-alpha-enables-app-update-on-the-fly/(无需经过 Apple 审核流程即可部署新版本!),分析 http://www.nikola-breznjak.com/blog/ionic/ionic-analytics-alpha-lets-you/, 推送通知 http://blog.ionic.io/announcing-ionic-push-alpha/.
  • Ionic CLI(命令行界面)在后端使用 Cordova,并允许您为 iOS 和 Android 构建(直接使用 Ionic CLI)应用程序(您可以通过执行ionic build ios or ionic build android和乌伊拉)
  • Ionic 使用 Angular 作为前端框架,因此如果您熟悉它,它将是一个额外的好处。他们是与 Angular 2.0 团队密切合作 http://blog.ionic.io/angular-2-ionic/ too.

如何开始你的项目?

如果你看一下我的回答这个问题 https://stackoverflow.com/questions/31298206/use-existing-spring-mvc-for-mobile-app/31300951#31300951您会发现,如果您已经在 Django 后端中定义了一个 API,那么您可以通过利用现有 API 并通过 Angular 来使用它,从而快速开始使用它$资源 https://docs.angularjs.org/api/ngResource/service/%24resource.

希望这对您有所帮助,并且您会发现使用 Ionic 是一种乐趣。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以 Django 作为后端的 Android/iOS 应用程序 的相关文章

  • 如何在使用 Ionic3 开发的 PWA 中处理硬件后退按钮

    我使用 Ionic 3 开发了一个 PWA 基于选项卡 它工作正常 直到在 Android 浏览器中按下硬件后退按钮或浏览器的后退按钮 如果它从主屏幕运行 按硬件返回将关闭应用程序 如果应用程序在 android 中的 chrome 中运行
  • Ionic 3 Uncaught(承诺):[object Object]

    我是 Ionic 3 和移动开发的新手 我正在尝试将 MySQL DB 连接到我的 Ionic 应用程序和 PHP Restful API 我用 Postman 测试了 API 它工作得很好 为了在 Ionic 中实现它 我做了以下操作 我
  • 离子侧菜单和带有嵌套视图的选项卡:选项卡嵌套视图的内容未显示

    我对两者都是新手AngularJS and Ionic 我正在创建一个应用程序 它具有sidemenu and tabs在菜单选项之一内 选项卡应使用以下方式呈现其内容nested view 所以没有简单的HTML here 我可以在侧菜单
  • 在 Ionic/Cordova 中接收 URL

    我正在尝试设置一种从另一个应用程序接收网址的方法 就像 您在浏览器中 单击共享 然后将链接发送到另一个应用程序 我的应用程序 我发现这个科尔多瓦插件 https github com Initsogar cordova webintent
  • 如何在没有android studio的情况下签署android apk

    我已经发现很多很多关于这一点的令人困惑的答案 How do I Sign release debug android app没有 Android Studio 例如 在签署 ionic cordova phonegap 应用程序时 您可以在
  • Ionic 4 键盘覆盖输入字段

    我有一个 Ionic 4 应用程序 其中有一个包含输入的表单 当用户单击输入时 它会打开键盘 但会隐藏内容 而不滚动 有没有办法解决 这是我的代码
  • 打字稿错误:将覆盖输入文件

    我已经更新了最新的离子版本 https github com ionic team ionic releases tag v3 3 0并删除src declarations d ts文件 现在 当我尝试运行应用程序时 我的应用程序显示以下错
  • 离子和电容器 - Android 启动画面响应能力

    Context 这与闪屏图像响应能力有关 根据我的研究 它之所以发生是因为缺少文档电容器文档 启动画面 https capacitorjs com docs apis splash screen Problem 当实现电容器的闪屏插件时 问
  • cordova 本地通知声音在 ios 和 Android 中不起作用

    我在用cordova plugin local notifications https github com katzer cordova plugin local notifications插入 现在我在 Android 和 iOS 中获
  • ionic 2 从 json 填充选择选项

    我正在尝试动态填充ion select带有 json 对象的下拉列表 我的 html 组件如下所示
  • 使用phonegap检查互联网连接

    我看到了一些不同的选项来检查电话间隙的互联网连接 有document addEventListener online onOnline false 还有navigator network connection type 但我不确定哪一种是最
  • Ionic 框架:创建项目时 Ionic 构建失败 (v4.12.0)

    I have ionic安装在我的系统中 当我跑步时ionic run app tabs它安装了所有npm包 但随后提示符变为 Downloading binary from https github com sass node sass
  • 如何使用 Angular/Ionic/JS 显示 Motion JPEG 二进制数据流?

    我正在为设备编写应用程序 此类设备将收到 POST 请求 并发回multipart x mixed replace二进制数据流 我必须在我的应用程序主页的一部分上显示此类流 我查了一下 这种情况的资源非常有限 到目前为止 我发现如果 Mot
  • Ionic 3 如何确保在加载视图之前获取数据库数据

    我正在使用基于令牌的身份验证 并且令牌已保存在数据库中 当应用程序启动时 我需要从数据库获取令牌并使其可用 然后再进行 API 调用 最好的方法是什么 在组件中 ngOnit storage get token then val gt Ma
  • 如何在 ionic 应用程序中显示 pdf 文件而无需下载

    我所做的事情 在应用程序浏览器中使用 使用谷歌文档 使用的网页视图 所以我尝试了所有这些方法来使用 ionic 在 Android 设备中显示 pdf 文件 但没有用 我可以在所有这些方法中看到下载按钮 谁能告诉我如何在没有用户下载选项的情
  • 离子动态列表分隔符

    我已经被这个问题困扰了一段时间 所以我希望你能让我朝正确的方向前进 我的角度工厂返回一个看起来像这样的对象 name Fall year 20xx id some id 这是一个学期列表 每个学期都有一个对象 其中包含名称 年份和学期 ID
  • Cordova Android 应用程序中的网页不可用

    编辑 我一直在解决这个问题并回顾我的所有步骤 我很乐意缩小这个问题的规模 并在令人困惑的情况下获得更多确切的细节 目前 我觉得 Keycloak 似乎只想将我重定向到 https 据我所知 这应该是 Wildfly 服务器配置问题 编辑 我
  • Android - 如何在 Android WebView 中使用 Javascript?

    我的混合 Android 应用程序遇到问题 我需要一个带有 HTML 的 WebView 在这个 HTML 中我有一个按钮 我有一个带有 WebView 的布局 并且 HTML 中有一个按钮 当用户单击此按钮时 我尝试使用另一个屏幕 也是带
  • 在Web应用程序中调用phonegap插件功能

    我正在构建我的第一个phonegap应用程序 当我打开该应用程序时 我立即将用户重定向 window location 到托管我的网络应用程序的服务器 是否可以从那里加载phonegap 插件 因为 deviceready 事件没有触发 我
  • 当应用程序停止使用 Sencha Touch 2.2 和 Phonegap 时,LocalStorage 存储不会保留在 Android 手机上

    这在我的浏览器中工作正常 但是当我在手机上安装该应用程序并使用它时 它看起来很好 直到我强制它停止并重新打开该应用程序 然后我的所有记录都消失了 我正在使用 2 2 和 Phonegap 任何帮助将非常感激 这是我的商店 Ext defin

随机推荐

  • Rails 身份验证策略

    希望这不是太宽泛 但经过大量谷歌搜索后 我不知道从哪里开始 我正在寻找介绍性 新手概述来帮助我开始为 Rails 3 应用程序构建身份验证实现 基本技术要求 Rails 3 应用程序托管在第三方服务 heroku 上 需要使用特定的外部私有
  • 列名称或提供的值的数量与表定义不匹配。为什么?

    我缺少什么 create table Diver diver number int primary key check diver number gt 0 not null first name char 30 not null last
  • 关于Spring框架应用程序中的JDBC中RowMapper使用的一些疑问

    我正在研究如何在 Spring 框架中使用 JDBC 对数据库执行查询 我正在关注这个教程 http www tutorialspoint com spring spring jdbc example htm http www tutori
  • 理解打字稿类中的“公共”/“私有”

    在下面的脚本代码中 无论名称是 public 还是 private 生成的java脚本代码是相同的 所以我的问题是 如何决定何时构造函数参数应该是 公立还是私立 typescript code class Animal constructo
  • 设置所有者设备应用程序后,为什么我无法创建受限配置文件?

    我最近注意到 当设备所有者申请设置后 无法创建受限配置文件 第一个案例 当我的设备所有者应用程序未设置 From 设置 gt 用户 我可以 添加用户或个人资料 然后选择一个User or a 受限个人资料 第二种情况 当我的设备所有者应用程
  • Rubygem God:进程的时间限制配置

    我在我的 Rails 应用程序中使用 resque resque scheduler gems 为了监控 resque 工作人员的工作 我正在使用 God 工具 我想添加这样一个上帝配置 它将监视resque工作器中运行的作业的时间 如果进
  • 是否可以使用可扩展列表视图作为微调器的下拉视图?

    我有一个二维字符串数组 我想使用微调器来允许用户从数组的第二级中选择值 但我想使用数组的第一级的值作为类别标题在可扩展列表视图中显示选择选项 这可能吗 有人可以指出我应该如何实施的正确方向吗 您不能直接使用ExpandableListVie
  • 严重损坏的 git 存储库

    接下来的内容很长 所以简而言之 我有一个严重损坏的存储库 我有备份 并且我想返回到稳定状态 以便我可以恢复文件 如果必须的话 可以手动恢复 我将整个存储库复制到另一个文件夹中 其中包含我的更改列表 因此如果这一切都变坏了 我可以轻松手动传输
  • mongo.exe 有更好的 shell [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题似乎不是关于主要由程序员使用的特定编程问题 软件算法或软件工具 help on topic 如果您认为该问题与主题相关另一个 St
  • 如何在 Chrome 扩展程序中捕获单个 HTML 元素的屏幕截图?

    我知道有一个捕获可见选项卡 http developer chrome com extensions tabs html method captureVisibleTab 但是如何剪切选项卡的屏幕截图 以便只留下一个 HTML 元素 为此你
  • php 在移动到另一个文件夹之前操作 tmp 文件夹中上传的图像/文件

    我一直在以通常的方式上传后处理图像文件 例如将文件从 tmp 文件夹移动到网站的首选文件夹 现在我想通过将图像保存在临时文件夹中来操作图像 一旦我完成了它 我想将其移动到首选文件夹 我想做的是 显示一个非常简单的自定义文件上传对话框 选择图
  • MongoDB查询获取CPU使用率

    使用mongodb 我知道可以使用命令 db serverStatus 它将返回有关当前 mongo 实例的大量信息 包括内存信息 mem bits 64 resident 4303 virtual 7390 是否有任何类似的内容 或者此输
  • 为什么向 HashMap 插入 50,000 个对象时会出现 OutOfMemoryError 错误?

    我正在尝试将大约 50 000 个对象 因此 50 000 个键 插入到java util HashMap
  • 平滑阻尼或补间算法

    我想知道一种平滑潮湿的算法 或者像有些人所说的 补间 我希望最好在 Lua 中使用 但任何东西都会有所帮助 我曾尝试观看统一教程 但如果没有算法来替代平滑阻尼函数 则无法传输代码 如果我正确理解这个问题 那么您正在寻找一个缓动函数 GitH
  • 自加载时间起 10 秒后运行 PHP 脚本

    我正在建立一个网站 但我不明白一件事 我需要一个脚本来检查自加载时间以来是否已经过去 10 秒 然后它将运行另一个 PHP 脚本 但我不确定这是否可能 我已附上我对这个问题的尝试 有任何想法吗 提前致谢 if query SELECT FR
  • xCode 4 中的异常没有调用堆栈

    我遇到了一个例外 我无法回溯 我想知道哪里抛出了异常 xCode 4 2 中有这样的选项吗 正如您所看到的 调用堆栈并没有多大帮助 我唯一知道的是我正在尝试访问 NSArray 中错误索引处的项目 欢迎所有想法 谢谢 设置断点objc ex
  • 除非我使用超时,否则 CSS 过渡不起作用

    我有几节课 hide is display none and transparent is opacity 0 元素pr container has webkit transition opacity 1s 以下基于 JQuery 的代码使
  • 如何使用 http/ftp 将文件上传到 iphone/ipad? (例如 ifile、goodreader)

    关于将文件上传到设备有什么好的建议吗 我见过很多应用程序在 80 或 8080 上创建 http 服务器来上传文件 这是否意味着我也必须实现服务器 有第三方库吗 最好是开源且非 GPL 编辑 我将在企业环境中为特定设备升级应用程序中的文件
  • 如何使用 glDebugMessageControl

    这是基于来自的调试回调示例https www khronos org opengl wiki Debug Output https www khronos org opengl wiki Debug Output并在某种程度上https l
  • 以 Django 作为后端的 Android/iOS 应用程序

    我有一个用 Django 构建的网站项目 想为其构建一个移动应用程序 我做了很多研究 但很困惑native and hybrid应用程序 我的项目基本上是 Quora 的克隆 只是一个大学项目 我也看到了PhoneGap Ionic and