私はiOSアプリに取り組んでおり、その最初のリリースは先週App Storeに公開されました。それに追加するものと、ユーザーのフィードバックに基づいて変更したいものについていくつかのアイデアがありました。私はすべての主要な新しいセクションに対して機能ブランチを実行することにしました。最初の機能ブランチを完了し、警告やエラーなしでアプリが正しく動作することを確認しました。
Xcodeで正常にマージされたマスターを開いて実行しようとすると、競合なしでブランチをマスターにマージしました。「セレクターの既知のクラスメソッドがありません」、「クラスのインターフェイス定義が重複しています」、「プロパティ」がたくさん表示されます。以前の宣言」エラーがあります。私はそれが言及しているすべてのファイルを調べました、そしてそれらはすべて機能ブランチにあったのとまったく同じです。ファイルを引き起こす最大の問題は、Appleからの到達可能性です。
これは、「セレクターの既知のクラスメソッドがありません」をスローするファイルの1つの例です。create
、、、update
およびremove
メソッドに対してそれを実行しています。これらのメソッドはすべて、機能ブランチに追加されました。
.hファイル:
//
// Services.h
// MovieQueue
//
// Created by Joshua Kendall on 2/22/13.
// Copyright (c) 2013 Simple App Group LLC. All rights reserved.
//
@interface Services : NSObject
+ (NSArray *)search:(NSString *)movieTitle;
+ (NSDictionary *)getMovieDetails:(NSInteger)movieId;
+ (void)create:(NSDictionary *)record;
+ (void)update:(NSDictionary *)record;
+ (void)remove:(id)movieId;
@end
そして、編集された.mファイル:
//
// Services.m
// MovieQueue
//
// Created by Joshua Kendall on 2/22/13.
// Copyright (c) 2013 Simple App Group LLC. All rights reserved.
//
#import "Services.h"
@implementation Services
#pragma mark - API Access
+ (NSArray *)search:(NSString *)movieTitle {
...
}
+ (NSDictionary *)getMovieDetails:(NSInteger)movieId {
...
}
#pragma mark - CRUD
+ (void)create:(NSDictionary *)record {
...
}
+ (void)update:(NSDictionary *)record {
...
}
+ (void)remove:(id)movieId {
...
}
@end