Tag: ios

为什么我喜欢编码

println(“ H​​ello World!”) 我本周刚刚完成了另一个iOS应用的编码。 它应该在几周内进入App Store(App Store审核过程需要这么长时间)。 这是一个ABCs抽认卡应用程序,由我的一个朋友设计,他画了一些愚蠢的动物。 我用Objective-C编写了代码。 自2008年提供iPhone OS SDK(软件开发工具包)以来,我一直在编写Objective-C。我在业余时间从iTunes U的Stanford iPhone Development课中学到了东西。 在上课的同时,我在8个月内制作了自己的第一个iOS应用。 我已经为iOS应用程序编写代码大约五年了,但我仍然认为自己是一个初学者-Apple每年都会更新SDK。 今年是最大的变化-Swift。 我开始在Swift发行之日就开始编写代码,到目前为止,我还没有错过Objective-C的编码。 作为设计师,这是个好消息。 Swift看起来更漂亮,更易于理解-更少的代码编写。 在以后的文章中,我将详细介绍我在Swift方面的经验。 我的代码之旅 在学校里,我正在独自学习代码,以便能够在线展示我的作品-当时我是插图专业。 网络是新的,因此没有像Stack Overflow这样的博客或在线社区。 网络开发也太新了,不足以成为学校的课程。 我是最早学习网络开发的人之一,因此在学校提供课程时,我帮助教了我的同学。 我非常喜欢Web开发,以至于坚持不懈地改变了我的专业。 我不是程序员-我毕业于美术学士学位,重点是电子媒体(交互式设计)。 但是,我职业生涯的大部分时间都集中在前端开发上。 我为我工作的公司写了很多HTML / CSS / JavaScript。 我每天仅靠学习就能掌握自己的编码和编程技术。 我喜欢自己解决问题。 我从大学二年级(1994年)开始使用一种名为HyperCard的Apple编程工具编写代码。 HyperCard开发了许多出色的游戏,例如Myst。 我们的课堂作业包括Edutainment应用程序,作品集,Music Artist Bio等。我喜欢设计体验,设计布局,当然也喜欢编写代码。 没有代码,我的设计将无法正常工作。 当一切都组装好后,最大的感觉就来了。 看到同学们使用我的应用程序真是令人高兴。 我是第一个将视频和音频整合到课堂项目中的人-很高兴看到他们的反应。 我喜欢编写代码,因此使用我制作的产品使人们感觉良好。 通过Twitter @ArtofNor与我联系。

iPad作为我的主电脑

有的人说这是不可能的,有的人保证这是世界上最好的,有的人有使用意愿并且从未尝试过。 事实是,仅仅改变操作系统是不够的,在采用诸如iOS之类的新系统来执行工作流的主要任务时,您还必须改变思维方式。 自2001年以来,我一直是软件开发人员(程序员),并于2003年离开Windows,迁移到GNU / Linux和BSD系统。 2009年,我在Hackintosh上使用Mac OS X,然后在2010年购买了我的第一台11英寸MacBook Air。第一台iPad在其第一版中,我不记得是何时购买的。随着时间的流逝,我逐渐相信如果我拥有必要的应用程序,iPad可能是我的理想电脑。经过其他MacBook,iPad和Chromebook之后,今天我一直在12.9英寸iPad Pro上进行活动,并使用2012 MacMini作为构建和数据服务器。 在浏览互联网时,我们可以找到一些报告,这些报告涉及自iPad Pro推出以来各行各业的一些人,他们在日常工作中加强了对iOS的使用,并逐渐停止使用macOS,以致有些人100%生活使用他们的iDevice。 其中包括Federico Viticci,Fraser Speirs,Ben Brooks以及其他可以在社交网络和博客上找到的故事。 值得注意的是,他们不一定从iPad Pro的发布开始就将iOS视为其主要操作系统,而是从iPad和iOS本身允许最佳执行与日常工作相关的任务的那一刻起。 我不会在这里争辩说每个人都应该做出这样的改变,我只会表明,就我和其他人而言,这是可能的,并且带来了好处–可能不是您的情况。 iOS并不拥有文件管理器,最让人们担心的概念和来自尝试进行此过渡的任何人的最大投诉。 对于那些习惯于以结构化方式组织文件和文件夹的人来说,他们对应用程序对文件的组织感到沮丧,并阻止了他们进行工作。 在这一点上,改变思维方式至关重要,因为完全有可能使用iOS的某些区域作为交换区域(例如,照片)或通过以下方式在不同的应用程序中打开文件并相互转移使用云存储或使用按钮共享您的工作。 想一想今天您广泛使用的软件,并记住它在您学会如何使用时的样子,甚至变得习以为常时遇到的困难,或者如果您以后又使用另一种软件迁移到了现在……您的头脑应该学习iOS的工作方式您的工作流程没有受到影响,或者必须创建一个新的工作流程。 如果您已经在macOS中使用全屏程序,并使用触控板上的手势或键盘快捷键在工作区之间切换它们(我逐渐缩小了在同一桌面上同时打开的窗口的数量),那么当您使用iOS。 我也习惯于在键盘上调用Spotlight并找到所需的内容,快捷键在iOS 10上的工作原理相同。 随着每个新应用专注于iOS的专业使用,过渡变得更加简单。 一个很好的例子是Workflow应用程序,它可以作为iOS的Automator使用,完全图形化,并包含各种动作的“配方”。 它使某些任务的重复工作变得容易得多-对于不认识的人来说值得检查。 专门针对我的领域,任何纯文本编辑器都足以编辑桌面程序,应用,网络和游戏的代码。 我之所以使用Coda,是因为它在iOS 10中比以前使用的Koder应用更加稳定。 它使我可以直接通过FTP,SFTP,SSH或WebDAV访问文件。 当需要查看或测试无法通过浏览器访问的内容时,我可以使用任何远程连接(例如VNC或Chrome远程桌面)来通过macOS Sierra查看我的MacMini。 最终需要代码编译或创建新项目时,仅使用Serverauditor应用程序通过SSH访问并执行必要的命令。 出于安全原因,我还会在Dropbox和Google云端硬盘中保留我正在处理的项目的副本,并在无法连接到服务器时进行访问。 根据项目的类型,可以直接在iPad上执行所有编程,但是我的工作流程已经像今天一样,不必更改它,只需更改一些工具即可。 有人已经问过我“大猩猩的手臂”,这是指在使用过程中举起手臂触摸iPad屏幕的疲倦,我可以说这更多的是习惯它。 习惯于使用键盘快捷键的任何人也几乎不会注意到它。 最麻烦的是屏幕的位置,具体取决于所使用的椅子/桌子,需要进行一些调整(指向Surface Pro!)。 总的来说,iOS已成为我的主要操作系统,而iPad Pro已成为MacBook的替代品。 是的,在很多方面都有很多进步,但是我们不能期望iOS成为macOS,它的建议并不相同,其操作要求想要以专业方式使用它的用户适应于获取最好的用途。 优点 如果这对您来说是决定性因素,那么iPad Pro和智能键盘的重量非常适合放在背包中,甚至放在兼容尺寸的文件夹中。 出色的屏幕分辨率与“夜班”功能相结合,使您可以工作数小时而不会累及您的眼睛,该尺寸还有助于使较大的区域可供代码使用或在侧面使用带有拆分视图的其他应用程序。 快速,流畅的访问和在应用程序之间的切换非常棒,到目前为止,我还没有注意到它的缓慢性。 智能键盘非常棒,响应速度很快,当您习惯了它,并且按键的外形小巧时,它在键入任务时变得更加敏捷。 在连续编程中,电池已使用了两天,当电池电量为10%时,我将其充电–我没有精确测量其持续时间(以小时为单位),但是我们知道这可能会因多种因素而有所不同。 如果您在工作时喜欢听音乐,声音确实非常好而且清晰。 注意不要打扰邻居! […]

拉瓜拉迪克洛尼

“这与旅程有关,伙计” Alcuni giochi sono dei colpi di fulmine:西维多诺,西普罗瓦诺,西阿曼诺·桑萨·里瓦斯,批评家:否决权是不合法的。 取代上古卷轴上的奇瓦瓦人妖,上古卷轴,我们的后代,刺客信条。 不能单独居住,不能随意旅行,不可以单独购买,不可以单独购买,不可以单独购买,不可以单独购买,不可以单独购买,不可以单独购买。 Persino dentro巢穴。 不可复制的个人信息:直觉的直觉,直觉的直觉,直截了当地的直觉,直截了当的直觉。 Poi certo,possono semper piacere或non piacere,严重的错误。 内洛特定人,经典人质,全民公安,马里奥,泽尔达,街头霸王,植物大战僵尸,GTA或俄罗斯方块,不可思议的东西che hanno avuto sullegenerazioni连续视频录像。 Threes!,il gioco di Asher Vollmer,Greg Wohlwend和Jimmy Hinson在categoria中的senza il minimo dubbio:在益智游戏,potenzialmente infinito,realizzato中无法使用和在parecchio impegnativo中。 准时制和准时制,请按时或按时完成。 非因果关系,不履行义务,不当行为,不当行为,不当行为,不当行为等: “ Non ci siamo arresi completamente ma nonèuna cosa che capita spesso nel mondo dello sviluppo dei videogiochi。 原始的原始人,原始的人,普通的人,普通的人,不合法的人 […]

夏日3-程序化TableViewCells

今天,我从事一些工作。 我要做的第一件事是完成Spotify的库下载程序。 下载已登录用户的整个库的功能可以正常运行。 下一步是将所有Spotify相册呈现到UITableView中。 该项目的目标之一是尽可能多地学习,而我想学习的一件事是制作程序化视图。 因此,我决定仅使用编程视图来制作整个应用程序,以应对挑战。 UITableView的设置非常简单。 但是,挑战在于设置UITableViewCells。 这是我学到的方法: 在UITableViewController中注册UITableViewCell。 我的看起来像这样: tableView.register(AlbumsTableViewCell.self,forCellReuseIdentifier:“ albumId”) 2.在子文件中创建自定义UITableViewCell: 关于程序化视图,我还有很多事情要学习,但是我觉得今天是一个好的开始。 Github链接: harrysummers /无限图书馆 通过在GitHub上创建一个帐户为Infinite-Library开发做出贡献。 github.com

必须尝试增强现实应用程序:

AR技术正在成为主流。 增强现实越来越多地用于平板电脑,智能手机等移动设备中,以改变现实世界与数字图像,图形相交和交互的方式。 增强现实被开发为移动应用程序,并被用于结合现实世界和数字组件。 因此,随着iOS 11引入了全新的增强现实应用程序框架,该框架创造性地称为AR工具包。 让我们深入研究顶级增强现实应用程序。 谷歌翻译: 只需对准相机即可立即翻译图像中的文本(38种语言) 应用程序链接:https://itunes.apple.com/us/app/google-translate/id414706506?mt=8 AR测量它: 借助Apple的新型AR技术,MeasureKit使得使用iPhone或iPad的相机轻松测量世界上的不同事物变得非常容易。 应用程序链接:https://itunes.apple.com/app/id1258270451 宜家广场: IKEA Place是第一个家具AR应用程序。 它可以帮助您将IKEA产品虚拟地“放置”在您的空间中。 应用链接:https://itunes.apple.com/us/app/ikea-place/id1279244498?mt=8 堆栈AR: Stack AR是一款AR游戏应用。 堆积尽可能高的积木! 应用链接:https://itunes.apple.com/us/app/stack-ar/id1269638287?mt=8 世界画笔: World Brush是有创造力的人的创意应用程序之一,您可以在现实世界中选择任何画笔进行绘画,每幅画都是匿名的,并保存在创建它的大概GPS位置。 应用链接:https://itunes.apple.com/us/app/world-brush/id1277410449?mt=8 天空指南AR: Sky Guide AR应用程序从未像现在这样令人愉悦且易于使用。 只需将其举在天空上自然发现天体,卫星。 无论年龄和经验水平,它都是一个美好的时光! 应用程式连结:https://itunes.apple.com/us/app/sky-guide-ar/id576588894?mt=8&ign-mpt=uo%3D4 全息: Holo是最好的免费AR应用程序之一,它可以让您创建进入现实世界的动物和超级英雄的全息图。 应用链接:https://itunes.apple.com/us/app/holo/id1194175772?mt=8 2018年人体解剖学图集: 人体解剖学是面向学生,专业人士和教授的3D应用程序。 该应用程序包括完整的女性和男性3D解剖模型。图像与3D横截面以及骨骼和肌肉的交互动画配对 应用链接:https://itunes.apple.com/us/app/human-anatomy-atlas-2018/id1117998129?mt=8 WallaMe-增强现实 WallaMe是与您的朋友共享增强现实消息,使用相机捕获图像并创建增强现实绘图的最佳增强现实应用程序选择。 应用程式连结:https://itunes.apple.com/us/app/wallame-hide-messages-in-real/id963058537?mt=8 嗨伙计, 列表仍在进行中。 因此,如果您想推荐最佳增强现实应用程序。 请在下面的评论部分中分享。

使用TexturePacker创建Spritesheets #spritesheet #forgetful

TexturePacker不仅好用,而且是独立开发人员制作的! 支持您的独立开发者! 关键帧动画创建 稍后,联合物理系统甚至3D图形还有很多其他优化选择,但是老式的关键帧动画对我来说是最重要的! 这就是为什么Banner Saga以及漫画书和动漫电影Akira都如此出色的原因。 创建图形 将文件添加到TexturePacker 测试动画 如果选择了精灵,然后点击“动画预览”,则可以使用非常可爱的精灵表动画,您可以控制其速度。 指定图集和可选的Swift文件的文件名和目录位置 选择发布Spritesheet 好极了! 现在,您将拥有一个Spritesheet地图集和样板代码来运行您的Sprite。

有人如何窃取您的iCloud密码

这是iOS向用户展示的默认“登录到iCloud”对话框(有时过于频繁且没有明显原因)。 令我感到恐惧的是,这是一个非常简单的登录提示,提示有人进行诊断,包含在诱饵应用中并用来窃取iCloud密码。 电子邮件地址 尽管开发人员无法轻松获得用户的iCloud电子邮件,但是Apple提供了API,用于验证电子邮件地址是否属于iCloud帐户。 诱饵应用程序可以在注册过程中向用户询问其电子邮件,或从其Facebook帐户获取该电子邮件。 稍后,攻击者可以验证电子邮件是否属于某个帐户,然后显示视频中显示的弹出窗口。 如果电子邮件不属于iCloud帐户,则可以将提示修改为提示所提供的电子邮件地址不正确,而只是在提示中询问电子邮件和密码-大多数人不会三思而后行。 问题 真正的“登录iCloud”弹出窗口似乎随机出现,因此很难检测到假表格。 此外,iOS使用通用的UIAlertController要求用户输入安全信息,这意味着普通人很难检测到假信息。 iOS不应让iOS从警报视图中要求用户登录,而应在iCloud部分启动设置,以便用户可以安全登录。不幸的是,用户已经习惯了当前的对话。 我感到即使苹果确保了他们登录iCloud流程,大多数人仍然会遭受这种攻击。 您可能会认为这样的应用程序将永远不会被Apple接受,但是为了在审阅过程中在雷达下飞行,攻击者可以将弹出窗口延迟显示,直到该应用程序被批准为止。 例如,可能存在一些服务器端逻辑,指示何时以及向谁显示伪造表单。 跟上我在Twitter或网站上的最新动态,请分享这篇文章以提高认识。

硬链接!=符号链接

链接是链接就是链接,对不对? 错误!!! 让我们谈谈硬链接和符号链接在Linux上的情况,它们之间的区别以及如何创建它们。 硬链接 从简单的角度来看,硬链接是一种使操作系统认为inode具有两个(或更多)名称的方法。 如果其中一个硬链接被编辑/更改,则所有关联的硬链接都将被更改。 例如,如果您有一个文件hello.c指向inode 141366中的信息,则指向文件hello.c的硬链接将指向inode 141366。 创建硬链接 创建硬链接的语法为: 在[OPTION] TARGET LINK_NAME中 TARGET =您想要与之关联的硬链接的文件 LINK_NAME =您的硬链接名称 有关shell支持的各种选项,请参见ln命令的手册页。 符号链接 最基本的符号链接是文件的快捷方式。 假设您有一个文件hello.c,它指向inode 141366中的信息。 如果创建指向文件hello.c的符号链接hello_link,则hello_link的文件会告诉操作系统查看hello.c的信息,然后该信息会告诉操作系统要查找的信息位于inode 141366中。 创建符号链接 创建硬链接的语法为: ln -s [OPTION] TARGET LINK_NAME -s = ln sommand选项以创建符号链接 TARGET =您想要与之关联的符号链接的文件 LINK_NAME =符号链接的名称 有关shell支持的各种选项,请参见ln命令的手册页。

向通知添加声音

您是否曾经从ESPN应用程序收到过推送通知,它会以ESPN的“ da-na-na,da-na-na”声音显示最终得分? 您是否曾经考虑过上述通知,并认为我希望可以为自己的应用程序做到这一点? 不再思考。 病态向您展示如何使用自定义声音发出通知。 第一步-使用iTunes转换为.m4r 如果您有 mp3 或 wav 文件,则可以跳过第一步。 您需要做什么:将歌曲添加到iTunes>转换为AAC>在finder中查找>将文件扩展名从.m4a重命名为.m4r .AAC是我们想要的。 这是有关如何在iTunes中将文件转换为AAC的更多信息https://support.apple.com/zh-cn/HT204310 第一步(替代方法)-使用Garageband转换为.m4r 在Garageband中打开文件。 编辑所需的确切声音。 Apple要求所有通知声音必须在30秒以内。 然后单击共享>将歌曲下载到iTunes… 在iTunes文件中>在Finder中显示。 然后将.m4a重命名为.m4r,单击“确定”。 将文件拖到桌面进行下一步。 第二步-将声音转换为CAF 我们需要将.m4r转换为.caf文件。 有趣的事实.caff代表核心音频文件格式。 输入此afconvert命令,该命令已存在于终端中 afconvert -d LEI16 -f caff LEI16 @ 44100 -c 1 input_file.xxx output_file.caf 因此,例如,如果我有文件“ ANewRecord.m4r”(没有空格),则输入以下命令: afconvert -f caff -d LEI16 @ 44100 -c 1 ANewRecord.m4r newRecordm4r.caf 第三步-拖放 将新的.caf文件放入项目的Supporting Files文件夹中。 确保将您的应用选择为目标。 […]

适用于iOS的“ Meitu”应用程序中有关Analytics Collection的技术信息

今天有一些骚动涉及到名为Meitu的移动应用程序。 这篇文章仅关注iOS版本(如果有兴趣,其他人已经初步了解了Android版本)。 评估内容(v6.1.1) “ 美图秀秀 ”(com.meitu.mtxx) “ MTXXFilterExtension”( com.meitu.mtxx.MTXXFilterExtension ) “ MTMosaicMessage ”(com.meitu.mtxx.MTMosaicMessage) 收集的分析信息 设备IMEI,IMSI和MAC地址似乎没有发送到Meitu的第一方或任何打包的第三方分析服务器。 无法在更新为最新固件版本的iOS设备上获取与无线电有关的敏感信息。 在初步测试过程中,Meitu应用程序确实向服务器发送了伪造的MAC地址“ 02:00:00:00:00:00”。 乔纳森·兹齐亚斯基(Jonathan Zdziarski)提到了Meitu应用程序对MAC地址的使用,因为二进制代码仍包含用于获取设备MAC地址的功能。 但是,如上所述,App Store沙箱中的iOS应用程序无法访问设备的真实MAC地址(与IMEI和IMSI一样)。 对于iOS 8或更高版本的设备,此功能没有风险。 以下信息似乎确实已发送到Meitu分析服务器(adui.tg.meitu.com):iOS版本(例如“ 10.2”),设备型号(例如“ iPhone7,2”),网络类型(例如“ WiFi”),设备语言,设备区域设置,移动国家/地区代码以及随机生成的唯一标识符。 正如乔纳森·兹齐亚斯基(Jonathan Zdziarski)指出的,由于使用了第三方分析库,Meitu应用程序确实获得了蜂窝提供商的名称。 蜂窝提供商名称将发送到第三方分析提供商Umeng / Youmi(alogs.umeng.com)的服务器。 “ channel_id”也发送到adui.tg.meitu.com服务器。 由于大量使用“辅助”或“辅助”工具在该地区旁加载应用程序,因此这在中国应用程序中很常见。 直接从App Store下载应用程序后,将在此参数下发送值“ App Store”。 Meitu应用程序收集GPS位置( 如果已授权 ),并将其发送到分析服务器。 我无法高度确定发送GPS位置的分析服务器,但我有一定的信心,认为该分析服务器是第三方分析服务器,并未由Meitu本身直接调用(旁注:Meitu确实请求访问权限位置带有模糊信息“开启后美图秀秀才可访问你的地理位置哦”,但直接归因于美图本身的唯一用例是为用户检查当地天气。 专用API的使用 正如Jonathan Zdziarski所指出的那样,该应用程序包含从私有框架加载两个功能的代码。 但是, 此代码不能按原样工作 。 这是因为该应用程序从路径“ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/PrivateFrameworks/GraphicsServices.framework/ GraphicsServices”(此路径在iOS设备上不存在)。 Meitu应用程序中确实存在一些代码,可以允许在运行时动态加载私有框架。 但是,没有迹象表明已使用它。 […]