阅读更多

1顶
0踩

Web前端

转载新闻 如何在iOS与Android间移植APP

2011-05-11 14:19 by 见习编辑 希·梦 评论(0) 有3530人浏览
除了像”I am rich”这种定点打击苹果烧包族的APP外,大多数应用都会尽量覆盖包含尽可能多的用户。这就需要考虑在iOS和Android两种主流操作系统间移植的问题。如果为各个平台量身定做界面,就能让用户利用以往的使用习惯快速学习。但为多个平台设计各异的界面毕竟是需要工作量的。如何才能在跨平台移植的时候只做那些最有必要的工作呢?兵不打无准备之仗,先来看看iOS与Android间有什么差别吧。

1、物理键之返回


Android手机的基本设计思路是是把最常用的功能硬件化,所以就有了home,menu,back三个功能键(其实界面设计很简单啦,就是“用户到某个地方做某事”,所以就有了导航用的back和展开命令用的menu)。


乔老爷够狠,要求iOS设备只有一个物理键home(据说以后还会把这个键砍掉,用手势当home)。所以在iOS上,返回是通过title bar左侧的back按钮来实现的。但这样设计也有好处,因为这个back“软”键上的文本是可以改的。在这个按钮上填上上一次的题目,可以让用户明确地知道按下它会回到哪里。

2、物理键之menu


在android上,与当前页面相关的命令会收到由“menu”键唤出的菜单里。而在iOS上,这些命令会放在屏幕底部的toolbar上。这种展示方式相比android的优点是“能一目了然地看到能够对当前页面做的操作”。而在android上,必须按下menu键才能看到命令。你不希望用户在使用你的APP时肩负着把这些命令背下来的艰巨任务吧?

3、Android的加分项:通知系统


在iOS上,向用户推送信息的方式只有一种,就是alert box。这在iOS只支持单任务的时候还好说,提醒一来,哦…… 看完了就点确定。但到了多任务版本后就有点不合用了。虽然iOS的alertbox可以在用户使用某APP的时候弹出其他APP的提示,但这样未免太烦了。有时一些提醒并不需要强硬中断用户当前的操作,比如后台在下载的报纸下完了。Android有更精巧的Status Bar Notification和Toast Notification(详情可参看钟磊的手机系统消息通知设计的整理和分析和我写的如何为手机界面设计提示消息)。当要推送非紧急的消息时,Android平台可以使用更柔和的状态栏提示

4、Android的加分项:长按操作


在Android上,当需要对一个对象采取一些操作时,可以长按,唤出相应的context menu(这是对一个项目的,如果是针对当前整个页面的操作,Android有menu物理键,iOS有toolbar)。但是在iOS平台上就不太有地方去放置针对屏幕上某一个对象的大量操作(一两个是可以的,放在项目旁边就O了)。可能在乔老爷看来,当需要对一个对象进行“炒、炸、烹、煮、蒸、熏、爆”的时候,就说明你想要的太多了。

5、iOS的加分项:右上角的快捷操作按钮


对于“右利手”用户而言,单手持机时屏幕左下角到右上角的连线是右手拇指的甜区。所以依照iOS的Guideline,当前页上最最最最最最最最最最最最最最常用的按钮应该放在titlebar的右端。

其实你会发现,清楚了这些差异之后,如何在平台间移植APP就清晰明了啦。

Android -> iOS

1、在每一级的标题栏左上角加上返回上一层的按钮。按钮名一定要是上一级的名称,不能用“返回”等无法透露回到哪里的文字。

2、由于iOS上没有menu键,所以需要将menu上的命令转化成toolbar上的图标。因此要额外绘制图标或者使用内置图标。

3、由于在iOS上没有“长按出context menu”的规则,所以需要给项目添加一个detail页面。不能在list页面操纵项目,那就再drill down一层呗。

4、由于iOS的通知方式只有alert box,所以诸如“下载完成”等提醒只能筛出重要的部分,用alert box传递。对次要提醒的设计可以看我之前的文章

iOS -> Android

1、左上角的返回按钮拿掉。

2、工具栏上的命令可以放到menu里。

3、如果对某个对象的命令很多,可以为其设计长按的context menu

4、不是很紧急的提醒就不要用alert box了,可以换成status bar notification

5、标题栏右侧的高频按钮可以保留,这个在android上也可以通用。

其实总的来说,也就两点:

1、差异主要体现在导航方式和页面命令上,所以对于页面元素的布局基本没影响。尤其是对于全屏游戏这种基本没导航,控件又都摆在屏幕上的更是影响不大。

2、iOS对硬件的依赖更低。如果实在是小公司,赶时间,没精力跨平台移植的话,可以考虑只为iPhone设计,然后直接套到android上,凑活着也能用的。但android用户在使用时也会觉得有一点点怪怪的。
  • 大小: 39.9 KB
  • 大小: 91.4 KB
  • 大小: 87.1 KB
  • 大小: 36.3 KB
  • 大小: 54.2 KB
  • 大小: 33.9 KB
1
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • WPFToMobile:使用Xamarin.Forms移植到iOS,Android和UWP的示例WPF应用程序

    WPFToMobile 使用Xamarin.Forms将示例WPF应用程序移植到iOS,Android和UWP。 阅读我的以了解详细信息。 移动应用 WPF应用

  • android程序变成ios,java – 如何将Android应用程序移植到iOS平台?

    - 将C本机应用程序编译到多个移动平台,包括Android和IOS,用于非商业项目的GPL. AirplaySDK:与MoSync类似,主要是商业版,对你所追求的两种环境之一有一些免费许可(相信是IOS,请自行验证).已由Konami,Activision等...

  • IOS和Android在与js交互的差别

    [转载来自Ios Android Hybrid app 与 Js Bridge](http://blog.csdn.net/jacin1/article/details/39993935) 在移动开发中,我们必不可少需要使用Web来代替部分Native,也就是业内所说的Hybrid App。一、基本信息介绍...

  • android app 移植到pc,微软开发新应用把Android app“移植”到Win Phone

    依据微软2010年公布在Tweet上的一份专利申请书,微软正在开发一种新服务能够在不同的手机操作系统中“移植”应用和应用数据。这是说Android,iOS应用以后可以跨平台“移植”到 Win Phone Win8系统上?因为Win Phone ...

  • android程序移植到ios,苹果推出免费Android移植应用Move to iOS

    【天极网IT新闻频道】【Yesky新闻频道消息】 今日凌晨,苹果不仅正式发布了新一代操作系统iOS 9,还发布了一款应用移植工具Move to iOS。据悉,这款应用可以帮助用户将应用由Android迁移到iOS,同时这也是苹果开发的...

  • IOS APP 架构设计

    在一个非标准 MVC 的 app 中,添加一个 view state model,并且在每个 view controller 中 (在已经对 model 进行观察的基础上) 观察这些 view state model,提供了不少优点:任意的状 态恢复 (这种恢复不依赖于 ...

  • Ios Android Hybrid app 与 Js Bridge

    在移动开发中,我们必不可少需要使用Web来代替部分Native,也就是业内所说的Hybrid App。 一、基本信息介绍 Ios 和 Android两种终端与Javascript的通信机制有些不同: 1. Ios 机制:  (1)Native可直接调用Js...

  • 跨平台应用app开发实践方案 Qt5 for Android iOS

    跨平台应用app开发实践方案 Qt5 for Android iOS 自Qt 5.2 发布后(目前最新版本:Qt5.11),开始支持 Android 、iOS移动平台上的应用程序开发 ,Qt for Android 上的应用程序开发成为除较常规的 Eclipse (Android ...

  • iOS与Android开发之比较

    本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2013/11/ios-vs-android-development近日,GQueues(集成了数个Google服务的在线任务管理器)的创始人与开发者Cameron Henneke将其...

  • iOS App项目中引入SQLite数据库的教程

    sqlite是纯C实现的,所以注定了它是一个跨平台利器,在Android与IOS下均能使用,而且完全可以写出通用的代码,方便我们移植。当然Android和IOS下都有封装过的sqlite给开发者使用,不过这样子一个是不方便移植,另一...

  • 浅谈移动端图片压缩(iOS & Android)

    在 App 中,如果分享、发布、上传功能涉及到图片,必不可少会对图片进行一定程度的压缩。笔者最近在公司项目中恰好重构了双端(iOS&Android)的图片压缩模块。本文会非常基础的讲解一些图片压缩的方式和思路。 ...

  • GuaiGuitar-IOS:小乖看谱的IOS版本APP

    小乖看谱是一款想要改变吉他谱阅览现状的APP,期望涵盖ios,android,wp,html5各个平台,并且最终成为一个开源的开放的非盈利性的吉他谱分享wiki社区。 包括项目愿景以及吉他谱JSON数据格式等,请到此查看项目主页:。...

  • windows ios android win phone macos,眼见macOS运行iOS App,微软希望Win10 原生支持 Android App...

    文|局长根据外国科技媒体 Windows Central 的报道,微软正在将 Android 应用引入 Windows 10 的 Microsoft Store,具体的上线时间尚未确定,Windows Central 表示可能是 2021 年。来自:Twitter/Zac Bowden微软希望 ...

  • Vue.js实战——移植Html5 App为Android App_10

    1、把前面开发的Html5原生获取经纬度、拍照、录音的demo移植至Android平台中,达到Html5可以横跨Web/Android/IOS平台的目标; 2、在Android系统中,把不支持原生Html5的特性,或者使用原生Android效果更佳的特性...

  • web项目快速转化为Android或者iOS应用

    Android启动之后跳转到web项目页面, 类似与一个嵌入在应用内的浏览器. 要求: web项目尽量做成自适应, 页面样式能自适应各种Android设备界面. 附件是一个项目, 只需修改config内的配置, 设置自己的首页链接, 应用...

  • android 原生分享界面_APP原生开发与APP混合开发区别

    山东APP开发公司中扬科技浅谈APP原生开发、H5开发与APP混合开发三者之间区别 目前市场上主流的APP分为三种:原生APP、Web APP(即HTML5)和混合... 一、APP原生开发 原生开发(Native App开发),是在Android、IOS等移...

  • Android & iOS 开发全面对比分析

    Android以它的开源、易上手、开发成本低而受到广大开发者的青睐,而iOS作为苹果的封闭系统,以它的简单、流畅高效、高冷等特点也吸引了一大批果粉开发者,笔者在学校进行了近2年的Android 开发,现在因为工作原因...

  • 闲鱼如何解决iOS环境搭建与APP打包速度问题

    随着Flutter等跨端框架的出现,业务开发同学经常需要在Android/IOS上跨端进行业务开发,问题定位等。新的不熟悉的环境的搭建总会遇到各种各样的问题,导致搭建失败,特别是IOS开...

  • ios 运行android应用程序,全面通吃 Win10可运行Android和iOS应用

    在今天凌晨举办的微软Build 2015开发者大会上,微软宣布将支持的程序继续拓展,为开发者提供多种解决方案,其中最重要的一点就是可以将App从Android系统和iOS系统上移植适配到Windows 10上。万万没想到Windows 10在...

  • 我们把 iOS 的 Cocoa Touch 移植到了 Android

    我们把 iOS 的 Cocoa Touch 移植到了 Android

Global site tag (gtag.js) - Google Analytics