如何用最简单的方法开发一个 iOS APP?

2019-08-29 23:06:06 +08:00
 cy18

在做一些手机充电相关的东西,需要记录手机的充电曲线,即以一定的间隔抓取手机电量,电压,充电状态等信息,保存到一个文件或者通过 WiFi 发送出来。

功能非常简单,但是在 APP Store 里面找了半天还是没找到功能符合要求的 APP,大部分电池相关的应用都只能显示当前电量,偶尔有几个能显示曲线的,都没有办法导出数据,而且采集的间隔也都太长了。

无奈想自己开发一个 APP 实现这个功能,但是之前没用 iOS 开发经验,手头也没有 MAC,苹果帐号之类的东西,大概看了一下,很难绕过申请苹果开发者帐号,还得搞一台 Mac 或者黑苹果之类的。

这个 APP 只需要在公司内部的几台测试机上运行即可,不需要上架什么的。

我没有没有移动平台开发经验,但是 C,C++,C#,Python 之类的都搞过,用什么方法开发这样一个 APP 最简单?预计需要多久?

PS:Android 上面这类现成的 APP 多一些,能够记录数据,但是没法导出数据,需要手动导出,但是勉强够用。如果能够用简单的办法开发出安卓、iOS 通用的 APP 那就更好了。

4491 次点击
所在节点    iOS
18 条回复
zongren
2019-08-29 23:24:03 +08:00
为啥没有这样的 APP
可能是因为没用
cy18
2019-08-29 23:27:07 +08:00
@zongren 一般人还真用不上,但是我们这边确实有用- -现在的方法是,隔 10 分钟看一下电量,手动记录……
WenhaoWu
2019-08-29 23:27:17 +08:00
Flutter 了解一下,考虑外包吗
brickyang
2019-08-29 23:33:09 +08:00
只需要 iOS 的话,最简单的方法就是直接撸 Swift。Books 里有本官方免费教程《 App Development with Swift 》,踏踏实实花一两天时间跟着走一遍。

开发者账号淘宝花点小钱搞定。

切记欲速则不达。
lleon
2019-08-29 23:43:29 +08:00
pythonista 自带的示例:

# coding: utf-8

'''Simple demo of using UIDevice to query the current battery state'''

from objc_util import *

UIDevice = ObjCClass('UIDevice')
device = UIDevice.currentDevice()
battery_states = {1: 'unplugged', 2: 'charging', 3: 'full'}

device.setBatteryMonitoringEnabled_(True)
battery_percent = device.batteryLevel() * 100
state = device.batteryState()
state_str = battery_states.get(state, 'unknown')
print('Battery level: %0.1f%% (%s)' % (battery_percent, state_str))
device.setBatteryMonitoringEnabled_(False)
lleon
2019-08-29 23:47:34 +08:00
运行结果:
Battery level: 52.0% (unplugged)

稍微改下应该能满足你的需求
Building
2019-08-29 23:49:43 +08:00
因为做不到,iOS 没有真后台,申请后台刷新会有误差。
shouc
2019-08-30 07:29:46 +08:00
React Native 最方便而且和原生感觉没区别 Flutter 毕竟还得学 Dart
lowSiver
2019-08-30 11:45:17 +08:00
做不到的,没有真后台,虽然可以通过一定手段保持一段时间,但是说不准就在什么时候被系统 kill 了,所以肯定不准确,没有意义😂
zmlu
2019-08-30 11:56:14 +08:00
雇一个人,让他开发
cy18
2019-08-30 14:03:48 +08:00
@lowSiver 那就保持在前台?
cy18
2019-08-30 14:04:12 +08:00
@zmlu 外包估计多少钱?
Elecoxy
2019-08-30 14:18:58 +08:00
想想 在开启记录之后,让它设置每隔十秒一个本地通知。然后使用通知功能可以唤起程序运行一小段代码来实现。貌似不难。建议原生 swift 或者 oc 开发,使用别的跨平台框架担心你哭。
Building
2019-08-30 16:22:29 +08:00
@cy18 找我,几百块帮你写一个。
cy18
2019-08-30 19:55:52 +08:00
@Building 后台问题有把握解决么?
Building
2019-08-30 21:26:42 +08:00
@cy18 只能保持在前台,或者通知中心,要手动刷。
monson
2019-09-06 15:27:51 +08:00
换个想法,iOS 自身就有记录啊,15 分钟一次。既然是测试机,你直接越狱了在系统数据库文件里找找更容易些吧。
Mo7878
2019-09-11 19:51:28 +08:00
写一个播放器 24 小时后台运行也没关系

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/596371

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX