Sunday, February 27, 2011
Tuesday, January 18, 2011
Display info.plist in program
Display info.plist in program
NSDictionary* infoDictionary = [[NSBundle mainBundle] infoDictionary];
NSLog(@"%i Keys: %@ ", [infoDictionary count],
[[infoDictionary allKeys] componentsJoinedByString: @" ,"]);
UIDeviceFamily ,CFBundleInfoPlistURL ,DTPlatformName ,LSRequiresIPhoneOS ,CFBundleVersion ,
CFBundleIdentifier ,CFBundleSignature ,CFBundleExecutable ,CFBundleExecutablePath ,CFBundleDisplayName ,CFBundleName ,CFBundleIconFiles ,
CFBundleSupportedPlatforms ,CFBundlePackageType ,NSBundleResolvedPath ,DTCompiler ,CFBundleInfoDictionaryVersion ,prefix ,CFBundleIconFile ,
CFBundleResourceSpecification ,DTXcodeBuild ,DTPlatformBuild ,DTXcode ,
MinimumOSVersion ,NSBundleInitialPath ,DTPlatformVersion ,UIStatusBarHidden ,UIPrerenderedIcon ,DTSDKName ,CFBundleDevelopmentRegion
iPhone Xcode codesign problem
Every other time, my build will fail with
"Command /usr/bin/codesign failed with exit code 1" as the error.
However, the second time it will succeed.
This is the details of the error
CodeSign "build/Release-iphoneos/x.app"
cd /Users/x/Documents/x/three20/x
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
/usr/bin/codesign -f -s "iPhone Developer: x" "--resource-rules=/Users/x/Documents/x/three20/x/build/Release-iphoneos/x.app/ResourceRules.plist" --entitlements "/Users/x/Documents/x/three20/xx/build/template.build/Release-iphoneos/x.build/x.xcent" "/Users/x/Documents/x/three20/x/build/Release-iphoneos/x.app"
/Users/x/Documents/x/three20/x/build/Release-iphoneos/x.app: object file format invalid or unsuitable
Command /usr/bin/codesign failed with exit code 1
While the second time when it succeeds, it has the following warning:
"
Check dependencies
[WARN]Warning: The Copy Bundle Resources build phase contains this target's Info.plist file 'Info.plist'.
"
"Warning: The Copy Bundle Resources build phase contains this target's Info.plist file 'Info.plist'.
"
After hours' search, there are NO other good posts talking about this. Many people asked this question, but no good answer found.
I tried myself many different ways and finally, I know why!!
This is because Info.plist includes self as target.
Then how to fix????
Friday, November 12, 2010
Config file for VIM Cheating file (Version 11.11.2010)
Or you can copy and past the following into ~/.vimrc
It supports syntax, unlimited yank buffer size (default is 50 lines which is annoying), press space to page down just like a web browser. I will keep updating this file
" .vimrc by Junxian
" Version 11.11.2010
"
" All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just
" /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime
" you can find below. If you wish to change any of those settings, you should
" do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten
" everytime an upgrade of the vim packages is performed. It is recommended to
" make changes after sourcing debian.vim since it alters the value of the
" 'compatible' option.
" This line should not be removed as it ensures that various options are
" properly set to work with the Vim-related packages available in Debian.
runtime! debian.vim
" Uncomment the next line to make Vim more Vi-compatible
" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous
" options, so any other options should be set AFTER setting 'compatible'.
"set compatible
" Vim5 and later versions support syntax highlighting. Uncommenting the next
" line enables syntax highlighting by default.
syntax on
" If using a dark background within the editing area and syntax highlighting
" turn on this option as well
"set background=dark
" Uncomment the following to have Vim jump to the last position when
" reopening a file
if has("autocmd")
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
\| exe "normal! g'\"" | endif
endif
" Uncomment the following to have Vim load indentation rules according to the
" detected filetype. Per default Debian Vim only load filetype specific
" plugins.
if has("autocmd")
filetype indent on
set autoindent
endif
" The following are commented out as they cause vim to behave a lot
" differently from regular Vi. They are highly recommended though.
set showcmd " Show (partial) command in status line.
set showmatch " Show matching brackets.
set ignorecase " Do case insensitive matching
set smartcase " Do smart case matching
set incsearch " Incremental search
set autowrite " Automatically save before commands like :next and :make
set hidden " Hide buffers when they are abandoned
"set mouse=a " Enable mouse usage (all modes) in terminals
" Source a global configuration file if available
" XXX Deprecated, please move your changes here in /etc/vim/vimrc
if filereadable("/etc/vim/vimrc.local")
source /etc/vim/vimrc.local
endif
" Turn on line numbering. Turn it off with "set nonu"
set number
"all PHP files in current file's directory and recursively will be scanned
"use mapping to re-build tags files after editing
nmap
\ :!ctags -f %:p:h/tags
\ --langmap="php:+.inc"
\ -h ".php.inc" -R --totals=yes
\ --tag-relative=yes --PHP-kinds=+cf-v %:p:h
set tags=./tags,tags
"Tell me where I am
set ruler
" Higlhight search
set hls
" Map Ctrl+N to remove highlight
nmap
" make that backspace key work the way it should
set backspace=indent,eol,start
" make space = page down
nmap
" remove the buffer limit when dong yank to copy and past in VIM
set viminfo='100,h