美文网首页iOS开发iOS开源&高仿项目精选程序员
开源项目: Mac端12306购票神器 - 12306ForMa

开源项目: Mac端12306购票神器 - 12306ForMa

作者: 小码僧 | 来源:发表于2018-01-01 16:44 被阅读597次

    元旦快乐~~ 今天是2018的第一天,约会的约会,晒恩爱的晒恩爱,不光如此,又到了为抢火车票高铁票犯愁的时间了哈哈。但是传统的360和猎豹的抢票神器都只没有Mac端,惆怅。

    但是不用灰心,最大同性交友网站--GitHub上面一个开源了Mac端的项目12306ForMac。如果你对它的安全性不放心,那么我们可以下载下来看看,自己运行看看效果,自己看看代码有没后门之类的哈哈。

    12306ForMac

    打开Github,搜索“12306 mac”关键字,搜到如下,第一个就是。然后,下载该项目到本地,但到成功运行的之前需要一些填坑,这篇文章记录这些坑。

    image.png

    当然没时间和兴趣的研究该抢票神器源码的童鞋,可以直接从Mac App Store上面下载安装该应用即可,不用往下看了。Mac App Store 传送门

    1. 安装Homebrew

    • 打开终端,输入以下命令
    $ /usr/bin/ruby -e "$(curl -fsSL [https://raw.githubusercontent.com/Homebrew/install/master/install)"​](https://raw.githubusercontent.com/Homebrew/install/master/install)"​)
    
    • 检测安装成功与否,查看版本
    $ brew -v​
    
    • 如果没有安装成功,更新brew
    $ brew update​
    

    安装Homebrew的细节可以查看笔者的另一篇https://www.jianshu.com/p/1de99aeedbf6

    2. 安装Carthage

    笔者以前安装过Carthage,但更新一次macOS系统之后Carthage找不到了,但Homebrew还在。于是只能重新装一次Carthage了。

    • 安装carthage
    brew install carthage
    
    • 有警告: 已安装过,请重新连接
    image.png
    • 连接carthage
    brew link carthage
    
    • 有报错:找不到目录(Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks)
    image.png
    • 命令创建目录(当然你也可以手动到/usr/local目录下创建Frameworks)
    mkdir /usr/local/Frameworks
    
    • 再次连接成功
    brew link carthage
    
    image.png
    • 连接成功,查看carthage版本
    carthage version
    
    image.png

    3. 利用carthage为12306ForMac项目安装第三方库

    • cd到项目目录下
    $ cd /Users/ChenMan/iOSTest/005MacApp/12306ForMac-master
    
    • 安装第三方库
    $ carthage update --platform macOS
    

    上面这个命令:carthage会为你下载和编译所需要的第三方库,当命令执行完毕,在你的项目文件夹中会创建一个名为Carthage的文件夹。在 ~/Carthage/Build/iOS里会出现xxx.framework文件已经为你创建好了。

    • 安装成功
    image.png
    • 打开工作空间,即后缀名为.xcworkspace的文件
    image.png
    • 4. 编译及运行

    • 编译报错

    image.png
    • 修复报错:添加异常处理逻辑
    do {
        
        let json = try JSON(data: dataFromString)
        if json.array == nil {
            return
        }
        for item in json.array! {
            let ticketTask = TicketTask(json:item)
            ticketTasks.append(ticketTask)
        }
        
    } catch  {
        
    }
    
    • 运行成功
    image.png

    5. 后面的话

    • 误区演示: 该项目是mac应用,所以安装第三方的命令是 $ carthage update --platform macOS,而不是$ carthage update --platform iOS。不信你看:
    image.png

    MASPreference框架无法成功构建。

    相关文章

      网友评论

      本文标题:开源项目: Mac端12306购票神器 - 12306ForMa

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