'아이폰'에 해당되는 글 3건

  1. 2012.01.20 [objective c] 기존 프로젝트에 core data 추가하기
  2. 2010.07.12 아이튠즈에 대한 간단한 설명과 아이폰으로 음악 듣기 1
  3. 2010.07.11 아이폰 벨소리 제작법 1
2012. 1. 20. 13:36

[objective c] 기존 프로젝트에 core data 추가하기

1. framework에 CoreData.framework 추가
2. Xcode에서 New File -> IOS 탭 -> Core Data(4.3 기준 이하 버전은 아마 Resource) -> Data model
3. delegate 에 아래의 내용을 추가

--- 헤더
#import <CoreData/CoreData.h>

@interface AppDelegate : NSObject <UIApplicationDelegate> {
  NSManagedObjectModel *managedObjectModel;
  NSManagedObjectContext *managedObjectContext;
  NSPersistentStoreCoordinator *persistentStoreCoordinator;

  (...Existing Application Code...)
}

@property (nonatomic, retain, readonly) NSManagedObjectModel *managedObjectModel;
@property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain, readonly) NSPersistentStoreCoordinator *persistentStoreCoordinator;

- (NSString *)applicationDocumentsDirectory;

(...Existing Application Code...)
@end

--- delegate.m
@implementation AppDelegate
//Explicitly write Core Data accessors
- (NSManagedObjectContext *) managedObjectContext {
  if (managedObjectContext != nil) {
    return managedObjectContext;
  }
  NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
  if (coordinator != nil) {
    managedObjectContext = [[NSManagedObjectContext alloc] init];
    [managedObjectContext setPersistentStoreCoordinator: coordinator];
  }

  return managedObjectContext;
}

- (NSManagedObjectModel *)managedObjectModel {
  if (managedObjectModel != nil) {
    return managedObjectModel;
  }
  managedObjectModel = [[NSManagedObjectModel mergedModelFromBundles:nil] retain];

  return managedObjectModel;
}

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
  if (persistentStoreCoordinator != nil) {
    return persistentStoreCoordinator;
  }
  NSURL *storeUrl = [NSURL fileURLWithPath: [[self applicationDocumentsDirectory]
                      stringByAppendingPathComponent: @"<Project Name>.sqlite"]];
  NSError *error = nil;
  persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc]
                                 initWithManagedObjectModel:[self managedObjectModel]];
  if(![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType
                                 configuration:nil URL:storeUrl options:nil error:&error]) {
    /*Error for store creation should be handled in here*/
  }

  return persistentStoreCoordinator;
}

- (NSString *)applicationDocumentsDirectory {
  return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
}

(...Existing Application Code...)

- (void)dealloc {
  [managedObjectContext release];
  [managedObjectModel release];
  [persistentStoreCoordinator release];

  (...Existing Dealloc Releases...)
}
@end

4. ViewController 에도 아래 내용을 추가

--- 헤더
@interface ViewController : UIViewController <NSFetchedResultsControllerDelegate> {
  NSFetchedResultsController *fetchedResultsController;
  NSManagedObjectContext *managedObjectContext;

(...Existing Application Code...)
}

@property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController;
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
@end

--- ViewController.m
@implementation ViewController
@synthesize fetchedResultsController, managedObjectContext;

(...Existing Application Code...)
@end

5. 아래와 같이 사용
ViewController.managedObjectContext = self.managedObjectContext;
2010. 7. 12. 01:45

아이튠즈에 대한 간단한 설명과 아이폰으로 음악 듣기

아이튠즈를 어려워하시는 분들을 위해 씁니다.
=======================================================================================================

아이폰에 음악을 넣는 방법에는 두가지 방법이 있습니다.
(찾아보면 더 있겠지만 일반적으로...)

공식 프로그램인 아이튠즈를 이용하는 방법이 있고, 서드파티 프로그램인 SharePod을 이용하는 방법이 있습니다.

아이튠즈를 이용하면 공식 프로그램이기 때문에 음악/동영상/프로그램/사진 등등을 모두 관리할 수 있고, 컴퓨터에 잘 관리해준다면 아이폰에 동기화만 해주면 동일하게 적용된다는 장점이 있습니다. 단점은 여러 PC에 관리하기 어렵고 아이폰에 들어있는 음악을 가져오기 어려우며 윈도우용 아이튠즈는 무지 느리다는 단점이 있습니다.

SharePod을 이용하면 동기화 뭐 이런거 필요없이 그냥 넣고 뺄 수 있으며, 프로그램이 무척 가볍습니다. 단점은 음악/동영상/사진만 관리가능하다는 점과 아이폰에서 음악을 꺼내왔을 때 태그가 이상하게 될 수도 있다(왠만하면 제대로 가져오지만 간혹 못가져오는 경우도 생기긴합니다.)는 점이 있습니다.

저같은 경우에는 집에 있는 PC에는 아이튠즈로 아이폰과 동기화하고 다른 곳에서 음악/동영상/사진을 넣거나 꺼내야할 필요가 있을 때는 SharePod을 씁니다.

1. 아이튠즈 설치 및 음악 넣기

2. SharePod으로 음악 넣기


추가.

아이폰의 기본 음악재생 프로그램인 아이팟을 사용할 때 몇가지 팁을 알려드리겠습니다.
1. 음악이 재생 중일 때 흔들면 랜덤하게 다음곡이 재생됩니다.

2. 화면을 한번 터치하면 가사 정보가 있을 경우 가사가 보이고, 재생 스크롤바, 셔플재생, 반복재생을 선택할 수 있는 화면이 나옵니다.

3. 재생 스크롤바를 앞뒤로 움직일 때 세세한 시간 조작이 힘든데(음악/동영상 동일) 세세하게 조작하고 싶을 때는 스크롤바의 동그란 부분을 터치한 다음에 아래로 내리면 고속 스크러빙-1/2 속도 스크러빙-1/4-정밀 순으로 내리는 길이에 따라 바뀝니다. 이 상태로 좌우로 움직이면 더 세세한 조작이 가능합니다.

4. 아이폰을 옆으로 돌리시면 커버플로우(앨범사진으로 노래를 선택하는 화면) 화면이 나옵니다.

5. 아이팟이 background로 재생중일 때(즉, 아이팟 화면에서 홈버튼을 한번 눌러서 빠져나갔을 때)홈버튼을 두번 클릭하면 iOS 3.x 버전은 팝업이 뜨면서 아이팟에 대한 몇가지 조작을 할 수 있습니다. iOS 4.x의 경우에는 홈버튼을 두번 클릭하면 멀티태스킹을 위한 앱 목록이 뜨는데 왼쪽으로 스크롤 해보시면 아이팟에 대한 조작 메뉴가 나옵니다.

6. 화면이 잠긴 상태에서 아이팟을 조작하기 위해 락을 풀 필요는 없습니다. 화면이 잠긴 상태에서 홈버튼을 두번 눌러주시면 아이팟 메뉴가 나옵니다.
2010. 7. 11. 23:36

아이폰 벨소리 제작법

아직 아이폰의 벨소리를 마림바로 쓰고 있는 분들을 위해 썼습니다=ㅅ=
=======================================================================================================
아이튠즈에는 벨소리를 판매하고 있지만 자신이 원하는 음악의 일부분을 벨소리로 만들고 싶을 때가 있습니다.

이런 아이폰용 벨소리를 제작하는 방법에는 여러가지가 있습니다. 아이튠즈를 이용하는 방법이 있는데 간단하지만 fade-in, fade-out같은 설정을 하기 어렵다는 단점이 있습니다.

그래서 아래의 두가지 방법을 추천합니다.
(만약 탈옥을 하셨다면 훨씬 더 간단한 방법으로 가능하나 순정 기준으로 설명하겠습니다.)

1. iRinger 프로그램을 이용하는 방법

2. 웹사이트를 이용하는 방법


이렇게 만들어진 벨소리를 아이튠즈의 보관함에 있는 벨소리에 드래그해서 넣고 동기화를 시켜주시면 아이폰에 벨소리가 저장됩니다.
(위의 iRinger 프로그램을 이용할때 마지막 단계인 Export Ringtone에서 Export to iTunes에 체크하셨다면 아이튠즈에 자동으로 등록되어 있을 겁니다.)

위와 같이 해주시고 위의 화면 우측 하단에 있는 적용버튼을 눌러 주시면 됩니다.
(동기화하지 않고 수동으로 하시려면 그냥 장비-벨소리에 드래그 해서 넣어주셔도 됩니다.)

마지막으로 저장된 벨소리로 변경하려면 아이폰의 설정-사운드-벨소리 로 들어가셔서 선택하시면 됩니다.