Xcode 7.0.1, Alcatraz 설치 후 메뉴가 안 보일 때,


Alcatraz ( http://alcatraz.io/ ) 설치 후 메뉴가 안 보일 때,

  1. Xcode 7.0.1 종료
  2. % defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-7.0.1
  3. % curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh
  4. Xcode 7.0.1 재시작
Advertisements

iOS 개발, CocoaPods, “.h” 파일들을 못 찾을 때 해결 방법


프로젝트에 Pods-{앱명}.[debug/release].xcconfig 이런 파일(텍스트)이 있을 것이다.

HEADER_SEARCH_PATHS = ${SRCROOT}/Pods/Headers/**

를 추가해 준다.

Xcode 의 “Build Settings” 쪽에 보면 “Header Search Paths” 항목에 “…./Pods/Headers/**” 가 추가 되있는 것을 볼 수 있다.

참고 : http://guides.cocoapods.org/using/troubleshooting.html

iOS 개발, CocoaPods 설치 및 프로젝트에 Facebook SDK 추가해 보기


1. CocoaPods(http://cocoapods.org) 설치 (no sudo 모드)

1.1 $HOME/.zshrc 추가


# for GEM
export GEM_HOME=$HOME/.gem
export PATH=$GEM_HOME/bin:$GEM_HOME/ruby/2.0.0/bin:$PATH

1.2 cocoapods 설치


% gem install cocoapods --user-install

$HOME/.gem/ 안에 설치가 된다.

1.3 cocoapods 초기화(?)


% pod setup

2. 예) Project 에 CocoaPods를 이용해서 FacebookSDK 설치

2.1 우선 Project 디렉토리로 이동한다.

(MyProject.xcodeproj 와 같이 xcode project 파일 이 있는 곳으로…)

2.2 Podfile 생성


% pod init

2.3 Podfile 수정.

(“pod ‘Facebook-iOS-SDK'” 추가)

% cat Podfile
# Uncomment this line to define a global platform for your project
# platform :ios, '6.0'

target ‘syruporder’ do
pod ‘Facebook-iOS-SDK’
end

target ‘syruporderTests’ do

end

2.4 FacebookSDK 를 받는다.

(Podfile 이 있는 디렉토리, Project 디렉토리에서 하면 된다.)

% pod install
Analyzing dependencies

CocoaPods 0.36.0.rc.1 is available.
To update use: `sudo gem install cocoapods –pre`
[!] This is a test version we’d love you to try.

For more information see http://blog.cocoapods.org
and the CHANGELOG for this version http://git.io/BaH8pQ.

Downloading dependencies
Installing Bolts (1.1.4)
Installing Facebook-iOS-SDK (3.23.0)
Generating Pods project
Integrating client project

[!] From now on use `syruporder.xcworkspace`.

[!] The `syruporder [Release]` target overrides the `GCC_PREPROCESSOR_DEFINITIONS` build setting defined in `Pods/Target Support Files/Pods-syruporder/Pods-syruporder.release.xcconfig’. This can lead to problems with the CocoaPods installation
– Use the `$(inherited)` flag, or
– Remove the build settings from the target.

% tree -L 1 -d Pods
Pods
├── Bolts
├── Facebook-iOS-SDK
├── Headers
├── Local\ Podspecs
├── Pods.xcodeproj
└── Target\ Support\ Files

Project에 Pods 라는 디렉토리가 생기고 Facebook-iOS-SDK가 잘 설치 된 것을 볼 수 있다.

– 끝 –

iOSDev, zsh을 이용한 pngquant 스크립트.


zsh 의 기능 중 “**/*.png” 를 응용해서 recursive 하게 하위 디렉토리까지 pngquant 를
적용할 수 있게 만듬.

옵션은 각자에 맞게 수정이 필요.
“-s1 –quality 100” 는 적용 시간은 오래 걸리지만 최상 image quality 를 위한 옵션임.

pngquant -s1 --quality 100 **/*.png --ext .png --force

참고 URL :
http://stackoverflow.com/questions/9647920/recursively-batch-process-files-with-pngquant/9649214#9649214

#PasswordBox LastPass를 대체할 PasswordBox


Chrome, Firefox, Safari, IE, Android, iOS 에서 패스워드 25개 저장 한정으로 무료로 사용할 수 있음.
5명 초대하면 무제한으로 사용 가능함.

사용방법 동영상 보면 모바일에서도 자동으로 로그인 해주고 기능은 괜찮아 보인다.

LastPass는 모바일 무조건 Premium 사용자만 가능하니… 25개 한정이지만 괜찮아 보이네요.

PasswordBox 추천 & 다운로드 URL:
http://j.pbox.io/K40ze5HB

이미지

이미지

이미지

이미지

이미지

– 끝 –

 

ObjC, NSString, multi-line quated string


>>> a="""a
... b
... c
... d
... """
>>> a
'a\nb\nc\nd\n'
>>>

Python 에서 여러 줄을 편하게 따옴표 3개로 묶는 것 처럼 혹시 NSString 도 있을까? 하고 찾아 봤는데 못 찾고 대신 아래 링크를 발견했다.

http://multilineobjc.herokuapp.com/

입력 :
<code>
<html>
<body>
<h1>It works!</h1>
<p>This is the default web page for this server.</p>
<p>Test Test The web server software is running but no content has been added, yet.</p>
</body>
</html>

출력 :

@" \
<html> \
<body> \
<h1>It works!</h1> \
<p>This is the default web page for this server.</p> \
<p>Test Test The web server software is running but no content has been added, yet.</p> \
</body> \
</html> \
";

wpid-featuredImage.png

iOSDev, ImageOptim, 이미지 최적화, 앱 속도 크기 향상.


“iOSdev, PNG 최적화 스크립트.( pngcrush + advpngidat )” https://lum7671.wordpress.com/2011/11/16/iosdev-png-%EC%B5%9C%EC%A0%81%ED%99%94-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-pngcrush-advpngidat/
글에 이여서 2탄으로 ImageOptim 앱에 대한 사용법이다.

1. 설치

http://imageoptim.com 에서 ImageOptim.app 을 다운 받고 /Applications 에 Drag & Drop 으로 설치를 한다.

2. 사용법

맥에서 앱을 실행하면 아래와 같은 윈도우 창이 뜬다.
이미지 파일을 Drag & Drop 으로 올려 놓으면 동작을 하며
자동으로 처리 이미지는 최적화된 새 이미지로 바꿔지게 된다.

또는

open -a ImageOptim.app *.png

와 같이 터미널에서 편리하게 실행 할 수도 있다.

3. 스크립트


#!/usr/bin/env bash
# -*- coding: utf-8 -*-
#
# 작성자 : 장두현
# 버 전 : 1.1
# 작성일 : 2012-03-08
# 수정일 : 2012-08-21
#
# * 맥 GUI용 : ImageOptim ( http://imageoptim.com/ )
#
# 사용법 :
# ./run_imageoptim.sh
# - 현재 디렉토리 이하 디렉토리 안의 모든 png 를 변환한다.
#
# 참고 : https://github.com/scribd/Xcode-OptimizePNG
#

cust_echo() {
echo -e "$1 $2"
}

APP_IMAGEOPTIM="/Applications/ImageOptim.app"

if [ ! -d "$APP_IMAGEOPTIM" ];then
cust_echo "요구사항체크:" "\nImageOptim.app 이 /Applications 디렉토리에 없습니다.\nImageOptim ( http://imageoptim.com/ ) 에서 어플리케이션을 받아서 설치하세요."
exit 0
fi

process_png()
{
cd $1
open -a ImageOptim.app *.png
}

DIR_PWD=$(pwd)

for directory in $(find $DIR_PWD -type d -print)
do
process_png $directory
done

4. 스크립트 사용법

이하 디렉토리에 있는 모든 png 파일을 ImageOptim.app 으로 최적화 한다.

예) Resource/Images/ 디렉토리 안의 png 파일을 최적화 하려면,
cd Resource
./run_imageoptim.sh

하면 된다.

※ 스크립트는 참고 용 임. 좀 더 다듬으면 거나 자신의 환경에 맞게 고치시길… 🙂

추가 Apple Developer 관련 링크 :
https://developer.apple.com/library/ios/qa/qa1681/_index.html#//apple_ref/doc/uid/DTS40009883

$ xcrun -sdk iphoneos pngcrush \
-revert-iphone-optimizations -q Local.png Local-standard.png