美文网首页Swift 专栏iOS-基础知识将来跳槽用
swift微博第13天(保存授权信息)

swift微博第13天(保存授权信息)

作者: IIronMan | 来源:发表于2017-11-06 23:10 被阅读28次

一·储存值的方式

  • 1.Home目录
    • 整个应用程序各文档所在的目录
  • 2.Documents
    • 需要保存由"应用程序本身"产生的文件或者数据,例如: 游戏进度,涂鸦软件的绘图
    • 目录中的文件会被自动保存在 iCloud
    • 注意: 不要保存从网络上下载的文件,否则会无法上架!
  • 3.Caches
    • 保存临时文件,"后续需要使用",例如: 缓存的图片,离线数据(地图数据)
    • 系统不会清理 cache 目录中的文件
    • 就要求程序开发时, "必须提供 cache 目录的清理解决方案"
  • 4.Prepences
    • 用户偏好,使用 NSUserDefault 直接读写!
    • 如果想要数据及时写入硬盘,还需要调用一个同步方法
  • 5.tmp
    • 保存临时文件,"后续不需要使用"
    • tmp 目录中的文件,系统会自动被清空
    • 重新启动手机, tmp 目录会被清空
    • 系统磁盘空间不足时,系统也会自动清理

二.下面奉献一个有关路径的类 String+Category.swift

 import UIKit
 extension String
 {
   // MARK: 1.返回Home的完整路径名
   /**
    *  1.返回Home的完整路径名
    */
   static func homeDir() -> String {
    
     //获取程序的Home目录
     let homeDirectory = NSHomeDirectory()
     return homeDirectory
   }
 // MARK: 2.返回Cache的完整路径名
 /**
  *  2.返回缓存路径的完整路径名 Cache
  */
 static func cacheDir() -> String {
    
    //Cache目录-方法1
    /*
    let cachePaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.cachesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
    let cachePath = cachePaths[0] 
    return cachePath
    */
    //Cache目录-方法2
    let cachePath2 = NSHomeDirectory() + "/Library/Caches"
    return cachePath2
}
// MARK: 3.返回Documnets的完整路径名
/**
 *  3.返回Documnets的完整路径名
 */
static func DocumnetsDir() -> String {
    
    //获取程序的documentPaths目录
    //方法1
    let documentPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
    let documnetPath = documentPaths[0]
    
    //方法2
    //let ducumentPath2 = NSHomeDirectory() + "/Documents"
    
    return documnetPath
}

// MARK: 4.返回Library的完整路径名
/**
 *  4.返回Library的完整路径名
    这个目录下有两个子目录:Caches 和 Preferences
     Library/Preferences目录,包含应用程序的偏好设置文件。不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好。
     Library/Caches目录,主要存放缓存文件,iTunes不会备份此目录,此目录下文件不会再应用退出时删除
 */
static func LibraryDir() -> String {
    
    //获取程序的documentPaths目录
    //Library目录-方法1
    let libraryPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.libraryDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
    let libraryPath = libraryPaths[0]
    
    //Library目录-方法2
    //let libraryPath2 = NSHomeDirectory() + "/Library"
    
    return libraryPath
}

// MARK: 5.返回Tmp的完整路径名
/**
 *  5.返回Tmp的完整路径名
      用于存放临时文件,保存应用程序再次启动过程中不需要的信息,重启后清空。
 */
static func TmpDir() -> String {
    
    //方法1
    let tmpDir = NSTemporaryDirectory()
    
    //方法2
    //let tmpDir2 = NSHomeDirectory() + "/tmp"
    
    return tmpDir
 }

}

相关文章

  • swift微博第13天(保存授权信息)

    一·储存值的方式 1.Home目录整个应用程序各文档所在的目录 2.Documents需要保存由"应用程序本身"产...

  • swift微博第12天(OAuth授权)

    1.基本概念 OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准 OAuth 的授权不会使第三方...

  • xcode 模拟器 安装 app

    近期工作不忙,遂准备学习swift开发技术,研究微博授权登录功能时,,由于项目中用到swift3.0最低支持iOS...

  • 我发的微博,版权竟然不是我的?

    今日,微博更新的《微博服务使用协议》,规定用户在微博上发布的信息,将不可撤销地授权微博平台作为微博内容的独家发布平...

  • 吐槽微博SDK的接入

    进入微博开放平台(当然你必须注册账号哈)微博授权登录 我们的目的是获取微博授权登录查找微博授权文档 让我们先浏览O...

  • 微博登陆SDK升级报错的解决方案

    项目中用到了第三方登录,其中有微博登陆,就是进行微博授权,然后获取微博账号的信息,导入到我们自己的项目中,用微博的...

  • 微博授权登录

    一.准备-申请应用 1.进入开放平台https://open.weibo.com 2.注册用户 3.创建应用 4....

  • Swift微博

    ![Uploading 2017-01-03-19-08-33-303_281985.jpg . . .]![Up...

  • Python实现微博爬虫

    想获取某人发的所有微博信息,发现新浪微博的API里存在局限性,不仅需要申请高级接口,而且还要用户授权才能获取他发的...

  • 微博第三方登录--个人笔记

    微博第三方登录## 微博第三方登录,在这里记录一下笔记,获取到授权,切获取到头像名字等个人信息首先在微博开发者平台...

网友评论

    本文标题:swift微博第13天(保存授权信息)

    本文链接:https://www.haomeiwen.com/subject/uotcdxtx.html