2018-01-01から1年間の記事一覧

UIImageを丸くする。KingFisherを使って画像を丸くする

Kingfisherとは? URLから画像を取得する方法として、KingfisherというLibraryがあります。 画像を丸くする func roundImage() -> UIImage { let minLength: CGFloat = min(self.size.width, self.size.height) let rectangleSize: CGSize = CGSize(width: m…

[ios] FirebaseStorageの使い方・Singleを使って実装する。

現在、firebaseのstorageを使ってProfile画像を作っています。 主な使い方は、Firebaseのドキュメントを使って知ることができます。 Cloud Storage | Firebase はじめに CocoaPodsでFirebase/Storageをインストールします。 use_frameworks! pod "Firebase" …

サイバーエージェントで1ヶ月インターンをしました!

iOSを初めて、半年がたち自分の力を試してみたいと思い、インターンをしていたPopshootという会社からサイバーエージェントでインターンをしました。 インターンでは、Carteというアプリの新機能の実装を行いました。 Carteは、順天堂大学の教授と開発を行な…

Carthage bootstrapをしすぎるとエラーが起こる

今回、carthage bootstrapをしているとエラーが起こっていたのでそれについて解説します。 API rate limit exceeded for 202.214.112.129というエラーです。 XCodeのvaersionが上がり、Carthage周りでエラーが出てたのでBootstrapをすることにしました。 し…

Goで、apiを叩いてみた

//packageは、SwiftでいうClassに近いものかと理解しています。他のfileで関数を呼ぶときは、このpacage名を使う必要があります。 package main //importは、libraryに近いです。今回のliberaryはGoが用意しているlibraryらしいです。 import ( //fmtは、pli…

Xcodeのversionをあげた際に起こるCarthageでのエラー修正

エラーが出た経緯 iOSのversionが12.0になったので、updateすると自分の実機でdebugできなくなったのでxcodeのversionもあげました。 そしたら、Carthageあたりでめっちゃエラー出ました。 エラー Module compiled with Swift 5.1.3 cannot be imported by t…

LIpsとCartunesのCEOに聞くコミュニティ形成の方法

どこに、流動性があるのかを見つける->Lipsでは、SNSとして使われているのではなくECサイトとして作られている サービス開始時 一気にユーザーを増やすと、ノイズになって検証がしにくい 熱狂的なファンがとごに刺さってるかを見つける 有名人がいると、投稿…

アーカイブ時に起こったエラー ITMS-90037 The Info.plist file is missing or could not be parsed while app store submittion

今回、Appの登録のためにアーカイブを行い、Appstoreに登録を行おうと思いました。 しかし、ITMS-90037 The Info.plist file is missing or could not be parsed while app store submittionというエラーがおこりました。今回は、この解決策を書いていきたい…

Swifにおける依存性の注入(DI)について Swinjectを使って紐解く

この記事では、Swiftにおける依存性の注入についてをまとめていきます。 Dependency Injection Dependency Injectionを直訳されたのが依存性の注入です。 正直、依存性の注入と言われてもさっぱり意味がわかりません。 そこで、調べて見ることにしました。 D…

Swift4 QRコードの読み取りと生成を行なう

今回、QRCoderという名前でQRコードを読み取るかつ生成するという簡単なクラスを作ってみました。 主に、使ったLibraryはRxSwiftと SwinJectです。 Protocolの作成 まずは、コードから protocol QRCoderDelegate { func qrCoder(_ qrCoder: QRCoder, didDete…

KVOとGCD

KVO 今回は、 KVOについて興味を持ったので調べてみることにした。 KVOは、RxSwiftを有効活用できる処理の一つです。 KVOとは、Key-value-Observingの略で、プロパティの値の変化を通知してくれる仕組みのこと。 Swiftで、KVOを行なった場合 private var obs…

heyの佐藤さんの話

多くの企業が広告に結構依存している 広告の歴史 知識がないと知識のある人が世界を作ってしまう。ー>一般市民にも知恵を与える フランス革命の時に、新聞に広告掲載されるようになった。 広告費は、ユーザーが支払うのではなく企業がお金を支払うようにな…

Observableとsubjectに関して

Rxswiftまとめ Rxswiftには、swiftを勉強していてもなかなか出てこないメソッドが多くあります。 そこで、自分が読んだ記事を参考にまとめることにします。 Observable ObserVableは、イベントの監視を可能とするメソッド。observableを表している。 これら…

optional,map,クロージャに関して

理解が少しあやふやだった、.map、クロージャ、optinalについて詳しく書いた記事があったため少しまとめてみた。 https://qiita.com/koher/items/c6f446bad54442a28bf4 optional(1) Optionalやobservableは、一つの箱として考える。intやstringも一つの箱…

swift delegateの理解

デリゲートは、他のクラスに処理を委譲したる、通知する仕組み ①処理を依頼するクラス textFieldShouldReturnは、UITextFieldDelegateプロコトルに定義されている。 だから、UIViewControllerで宣言する必要がある。 プロコトル:言語の橋渡し的な役割を持つ…