Swift

Swift:なるほど、これは難易度が高い。

Syncを実装しています。伏兵オプショナルが現れ、手こずっています。

このエラーは、Swiftがベータ版であることに原因があるらしいです。調べたら、オプショナルに原因があるからそれを全部チェックして修正しようということらしいです。あるいは、別のところでは、プロジェクトを作り直してやりなさいというのもありました。

Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1

対処方法がわからないのであれこれやってみてうまく行かないので、Dropboxに関わる箇所が原因と決め、そこを全部コメントにしたらbuildが通りましたので、ひとつひとつ範囲を狭めて行くことにしました。

原因は次のnil!でした。

if DBAccountManager.sharedManager().linkedAccount != nil!  {

これは厳しい。buildまで行かないとエラーがわからないし、そこまで行ってもいったいどこでエラーが起きているかわからないからです。

先程、OS X 10.10正規版になったので、起動音のジャーンを小さくするのにどこにそれを書いたがわからなくなり、探すのがたいへんでした。当時は、ボワーンと書いていたからです。それで、起動音、ミュート等、考えつくキーワードを追加しました。

本当にいろいろ出てきます。最終的には、Objective-Cの次のif文が問題であることが判明しました。これは || (OR)で聞かないで、ふたつに分ければうまく行きそうです。

if (!account || !account.linked) {
[self print:@”No account linked”];
return NO;
}

Categories: Swift, 技術