1、XML属性列表(plist)归档 2、preference(偏好设置) 3、NSKeyedArchiver归档(NSCoding) 4、SQLite3 5、Core Data
现在人们已经习惯于使用手机来查看文档了,除了使用各个应用来打开office文档,iOS自身的WebView也支持打开查看大部分类型的office文档,当然他本身是用来打开HTML文件的,但也不妨碍对这个强大的功能加以利用嘛。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/61919148
一:Plist 文件的创建 Plist 文件作为我们IOS开发的一种数据存储文件,还是经常会用到的。在看《X-code江湖录》的时候,看到了这一点。自己就写了一下,把写的东西分享出来!先看看它的创建,它的创建和我们其他文件的创建一样 Command + N 看下图: 739006-20160423120233616-1326039103.png 二: plist 文件的使用,注释里面写的很清楚了,大家看代码就OK。 // 先看看Plist里面有什么, 其实它只是创建了,没写数据,是空的!
写Objective-C的时候常常会用到各种宏定义,但是Swift中貌似没有宏的这种定义,更多的是通过全局常量或者全局函数来实现这一效果.我们只需要建立一个文件(假设为Const.swift),把想用的定义在里面,无须导入头文件什么的,就可以在全局用啦.
我们日常开发提交给Appstore发布的App都经过官方保护加密,这样可以保证机器上跑的应用是经过苹果审核过的,也可以管理软件授权。经过App Store加密的应用,我们无法通进行反编译静态分析,在逆向分析过程中需要对加密的二进制文件进行解密才可以进行静态分析,这一过程就是所谓的脱壳(砸壳)。
一般通过以下两种方式使用磁盘缓存: ·文件缓存 ·数据库缓存(一般是指在SQLite数据库)
相信大部分的开发者在实际开发中,可能项目都会有要求实现部分的数据的持久化保存,而在移动开发中,基本推荐使用轻量级的关系数据库--sqlite,而FMDB就是基于sqlite封装的第三方开源库, 这里就详细的讲一下iOS中,如何方便的使用FMBD进行项目开发。 ---- 数据库的使用步骤一般如下: 1.创建数据库; 2.创建表(如果表不存在); 3.对表进行操作(增、删、改、查); 4.一般有第四步:在3操作完,查询一下结果,看看数据库操作语句写的是否正确; 5.关闭数据库; -
-需要在info.plist配置NSLocationWhenInUseUsageDescription字段;
一、iOS数据持久化方式 (1)XML属性列表(plist)归档 (2)Preference(偏好设置),本质还是通过“plist”来存储数据, 但是使用更简单(无需关注文件、文件夹路径和名称) (3)NSKeyedArchiver归档(NSCoding),可以把任何对象, 直接保存为文件的方式。 (4)SQLite3,当非常大量的数据存储时使用 (5)Core Data,就是对SQLite的封装 关于bundle路径和sandbox沙河路径: (1)bundle路径:应用程序 (APP) 在手
网上有很多方法,尝试起来都很麻烦,我这个方法还是比较简单的。 解决方法: 我们在手机用数据线连接到电脑时,会弹出很多手机里面的图片,你的隐私尽收眼底(好尴尬)。在1部分导入A视频文件,点击 2 (照片)的时候会在 3 的位置上出现,此时,我们直接把视频按住,拖到桌面即可,是不是很简单啊!
简单理解就是资源文件包,会将许多图片、xib、文本文件组织在一起,打包成一个 Bundle 文件,这样可以在其他项目中引用包内的资源。
在上架App之前想要 真机测试的同学 请查看 iOS- 最全的真机测试教程 里面包含怎么让多台电脑同时 上架App和同时真机调试。P12文件的使用详解
上面是百度百科对沙盒简介,iOS这边每个APP都对应有一个自己的沙盒,用于App自己的数据存储。安全角度上每个App只能访问自己沙盒里的数据而不能跨域访问别的App的数据。此次讨论的数据持久化存储除keychain外都是存在沙盒里的。
今天有个需求,从App上下载附件可预览,产品要求简单实现就是跳转第三方App预览即可
可以直接通过 URL 的属性获取沙盒路径的 URL,不需要再借助于FileManager.default.url。 URL 的appendingPathComponent()方法即将被废弃,建议使用新方法append(path:directoryHint:)与appending(path:directoryHint:)。 import UIKit class ViewController: UIViewController { override func viewDidLoad() {
一. 网络编程基础 在移动互联网时代,几乎所有应用都需要用到网络,只有通过网络跟外界进行数据交互、数据更新,应用才能保持新鲜、活力。一个好的移动网络应用不仅要有良好的UI和良好的用户体验也要具备实时更新数据的能力。网络编程便是一种实时更新应用数据的常用手段也是开发优秀网络应用的前提和基础。 1. 在网络编程中,有几个必须掌握的基本概念 客户端(Client):移动应用(iOS、android等应用) 服务器(Server):为客户端提供服务、提供数据、提供资源的机器 请求(Request):客户端向服务
iOS的沙盒机制,应用只能访问自己应用目录下的文件。iOS不像android,没有SD卡概念,不能直接访问图像、视频等内容。iOS应用产生的内容,如图像、文件、缓存内容等都必须存储在自己的沙盒内。默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。Library包含Caches、Preferences目录。
假如你需要把一个字典或者别的什么东西保存到沙盒里,你准备怎么做?也许你已经条件反射的想到了操作步骤……其实,你可以不必每次都那么老老实实的把每一步写出来,一行代码就可以了:【路径+保存文件】两个关键点,组成一条链式语法。
本篇博客就使用前面操作SQLite的知识来实现如何去插入,删除和更新数据。然后再把操作SQlite数据库常用的方法进行一个封装。把常用方法进行封装后,把Cars数据库中的其中一个表的数据进行查询,并在UITableView上进行展示。因为本实例要对数据库的数据进行modify(修改)操作 ,在iOS系统上呢,为了安全起见,在Bundle中的数据库资源是不允许进行数据的插入修改和删除操作的。在之前的博客中我们只进行了查询操作,所以从Bundle加载数据库资源文件是可行的。 如果对数据库进程insert
利用上周的业余时间把这篇规范整理了出来,我会将这篇规范作为我们iOS团队的代码规范,并且还会根据读者的反馈,项目的实践和研究的深入做不定时更新,还希望各位朋友看了多多指正和批评。
1.先看一下效果 左右滑动交互的TabBarController 2.在iOS7.0以前,要实现这样的效果,只有自定义TabBar了,但这很麻烦。而在iOS7.0以后,苹果在UITabBarContr
在iOS开发中,我曾遇到这样一个问题,很久都未能解决,就是在cell上添加一个button,当我们点击button时,它是没有高亮效果的,除非我们长按button,我这里整理一下解决这个问题的方法 原文链接: http://stackoverflow.com/questions/19256996/uibutton-not-showing-highlight-on-tap-in-ios7 解决方案一: - (void)viewDidLoad { [super viewDidLoad]; s
此种场景出现在将project中32位第三方库替换成64位时,project中如何存在相同的第三方库,最好把原来32位相同的库删除,再添加。不然Xcode编译时,有可能索引到重复的那个32位库。造成编译通不过。
2017-02-18日更新 一、声明: 1.1 此文章是继iOS-微信支付(一)前戏之后的文章,有疑问,请回顾前一篇文章 1.2 微信支付签名、加密都在服务器端做,此篇文章只调用服务器接口获取(pa
前言 随着组件化的日益兴起,通过CocoaPods管理一些自己的库是基本的要求,本文将介绍如何将自己的项目支持通过CocoaPods管理以及自己在实践过程中遇到的一些问题! 绑定自己的 GitHub 帐号 请将下面的内容替换为自己的 pod trunk register 272338444@qq.com 'password' --verbose 由于是第一次注册,下面给我返回了一堆东西 opening connection to trunk.cocoapods.org:443... opened st
在iOS14中苹果推出了很多新特性,其中就包含App Clips。App Clips类似微信的小程序,不需要显式的去App Store里下载,苹果会在对应的时机进行下载。App Clips可以在不打开主App的情况下,单独进行使用,交互操作和主App无异,例如登录、列表视图、支付等。
本文首发于我的个人博客:『不羁阁』 https://bujige.net 文章链接:https://bujige.net/blog/iOS-Resume-Download-NSURLConnection.html 目录 文件下载简介 1.1 文件下载分类 1.1.1 按文件大小划分 1.1.2 按实现方法划分 文件下载实现讲解 2.1 NSData(适用于小文件下载) 2.2 NSURLConnection 2.2.1 NSURLConnection(小文件下载) 2.2.2 N
注 同样可以在Build Setting 的 sign中设置证书,但是有点麻烦,建议就在General中设置证书,比较方便,还可以查看错误的地方。
http://blog.csdn.net/totogo2010/article/details/7669837
本文是我个人在对逆向工程强烈的兴趣驱使下,拜读《iOS应用逆向工程》,所实现的一个好玩的功能,与大家分享,也是对自己学习的一个简单总结。BTW iOS逆向论坛 iOSRe 是一个很好的iOS逆向交流社区。
本系列可能会伴随大家很长时间,这里我会从0开始搭建一个「网易云音乐」的APP出来。
iOS提供了一个类AVSpeechSynthesizer来实现文本到语音的功能, 即读出文字
最近iOS卡审严重,很多小伙伴都被拒了,也有很多小伙伴收到4.3礼包,这里就说说4.3吧!
AVFoundation的录音和播放 音频的录制与播放主要和三个类有关AVAudioSession,AVAudioRecorder,AVAudioPlayer。 AVAudioSession AVAudioSession类由AVFoundation框架引入,每个iOS应用都有一个音频会话,这个会话可以被AVAudioSession类的sharedInstance类方法访问,如下:
目前13以上系统还没有完美越狱的方案,可以临时使用checkra1n方案对手机进行越狱:
创建一个Super父类,并继承SPPageMenuDelegate ,UIScrollViewDelegate
SnapKit是一个优秀的第三方自适应布局库,它可以让iOS、OS X应用更简单地实现自动布局(Auto Layout)
屏幕模式(1x, 2x, 3x):描述的就是屏幕中一个点有多少个 Rendered Pixels 渲染,对于2倍屏(又称 Retina 显示屏),会有 2 * 2 = 4 个像素的面积渲染,对于3倍屏(又称 Retina HD 显示屏),会有 3 * 3 = 9 个像素的面积渲染
以上,就是该项目的所有数据库表。实际项目会因业务需求,追加一些字段,但核心还是不变的。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167881.html原文链接:https://javaforall.cn
继续,这里有一个区别,因为PP文件的开发测试版需要真机调试,所以我们需要绑定真机,这里因为之前我添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来在此添加,在发布PP文件中,是没有这一步的;
1、开发者证书(分为开发和发布两种,类型为ios Development,ios Distribution),这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基证书,用来证明自己开发者身份的; 2、appID,这是每一个应用的独立标识,在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的
重点: 一般一个开发者帐号创建一个发布证书就够了,如果以后需要在其他电脑上上架App,只需要在钥匙串访问中创建p12文件,把p12文件安装到其他电脑上。这相当于给予了其他电脑发布App的权限。
iOS 往数据库里写保存文件路径的时候,不要写全路径,因为软件更新或者重新安装沙盒路径会变
2017-02-18日更新 在微信开放平台创建你的应用(填写资料,微信官方审核一般3~5天) 01-创建应用成功.png 待应用通过审核后,准备申请开通微信支付
还是跟之前的步骤一致,创建工程,然后配置 Makefile。注意创建工程时名字只能包含数字跟字母。
Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装AutoLayout,简洁明了并具有高可读性,而且同时支持 iOS 和 Max OS X
痛点 实际开发过程中,从网络上拿到的数据,再控制台打印输出时,格式是以下形式的: { error = { errorCode = 10002; errorMessage = "Appkey is missing. (\U65e0appkey\U53c2\U6570)"; }; status = ERROR; } 存在着以下几点问题 双引号" "缺失 unicode编码没有显示中文 当有数组情况时候,数组的中括号[ ]--->变成可恶的圆括号了( )
一. AFNetworking简单介绍 通过前面学习的HTTP协议的基本知识,GET/POST请求的区别,NSURLConnection 和 NSURLSession的使用,已经基本了解了网络请求的方
领取专属 10元无门槛券
手把手带您无忧上云