【转贴备忘】[教程]iPhone 實機開發 Part 1 - HelloWorld

http://bbs.weiphone.com/read-htm-tid-222380-page-1.html

 

最近小弟開始在研究 iPhone 的開發,無奈找到的資料都是舊的,也不知道怎麼放到 iPhone 上,應該很多人都跟我有同樣的困擾吧!經過幾天的研究總算寫出第一個 HelloWorld,而且可以不用付99元美金就可以放到實機上執行! 今天先和大家分享怎麼放到手機上,以及基本的 Xcode 使用:
我的環境如下:
IBMX60+iDeneb 10.5.5
iPhone 港版16G+FW2.2+越獄
iPhone SDK 2.2 final
MobileInstallation 已替換(這很重要,不然沒法放到 IP 上,可以參考 weiphone 的這個帖子:http://www.weiphone.com/thread-206698-1-1.html)
注意: SDK 版本最好和 IP 版本一致!

好啦,同學們,課程開始啦!

1. 產生證書
由於 XCode 後面的版本都要求應用程式必須經過簽署,也因此你必須要
多花99美元加入 Developer Program (真是黑呀),反正我又不放到 App Store 賣錢,乾脆自己簽個證書來用不就好了

打開 Key Access 這個工具程式(在應用程式->工具程式內),並建立一個 "iPhone Developer" 名稱的證書(這個名稱不要改,否則你得在專案內改變)








類型選擇"編碼簽名"




輸入憑證資訊








最後選擇存放在"系統"內(不是 "登入",否則會找不到)



這樣就大功告成了,你已經省下$99了!

2. 打開 XCode 建立 View Based Application






2. 專案建立好了後,打開 Project Setting,並在 User-Defined Settings 輸入:
PROVISIONING_PROFILE_ALLOWED = NO
PROVISIONING_PROFILE_REQUIRED = NO




3. 打開 Info.plist,這個檔案主要存放應用程式的相關描述,按右鍵 Add Row,新增 SignerIdentity = "Apple iPhone OS Application Signing" (要一樣的,亂輸好像不行)




4. 打開 MainWindow.xib 檔案,並雙擊 Window 這個圖標,我們可以看到 iPhone 內唯一的一個 Window




5. 加入我們自己的 View,在 Class Identity(切換到最右邊的 Tab) 輸入 MyView 按下回車鍵




6. 同樣的我們拉進一個 UILabel 和 UIButton,並調整一下 Label 的屬性,這邊 Autosizing 的調整還蠻容易懂的,大家可以試著調整看看就知道了




7. 畫面弄好了,但是還沒有把我們的 View 和 ViewController 建立連接,點選 HelloWorld View Controller 後可以在菜單內的 Tools->Connections Inspector 看到和 View Controller 連接的 Outlet(也就是類裡面的變量),連接的方法是把 outlet 內的view 拖拉到我們實際建立的 View




8. 接著我們在建立好的 View 新增一個 outlet(lbl) 和 action(clickMe),這樣我們才可以改變 Label 這個物件,並分別把 outlet 連接到 HelloWorld 這個實際的 Label,action 連接到 "點我" 這個按鈕,並選擇 Touch Down 的事件,稍後我們會用到這個事件來改變 Label






9. 連接關係都建立好了,我們要產生實體的類,XCode 會幫我們把必要的 code 產生,產生的方法是在 File->Write Class Files 




10.接下來我們加上一些代碼,分別打開MyView.h(注意要在 MyView 後面輸入 UIView,Xcode 不會加上)和MyView.m並輸入下面代碼







值得一提的是你可以在寫的過程中按 CTRL+"<" 看到提示

11. 選擇要使用的設備,在此我們選擇 Device - iPhone OS 2.2,XCode 會幫我們簽署,按下"允許"(不能按"總是允許")就可以輸出到你的iPhone了(第一次跑可能會出現 Security policy error,再跑一次
就不會出現了)




12. 要刪除模擬器或實體機上的 Ap, 只要按住圖標不放就可以了




13. 來個實體和虛擬機的合照吧,點"按我"可以改變 Hello World 的顏色




下課了~

[ 本帖最后由 pochuang 于 2009-1-7 15:35 编辑 ]

 

转载于:https://www.cnblogs.com/oiramario/archive/2011/03/25/1995673.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/380635.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DS和[address]

8086CPU中&#xff0c;用16位寄存器来存储一个字。高8位存放高位字节&#xff0c;低8位存放低位字节。在内存中存储时&#xff0c;由于内存单元是字节单元&#xff0c;则一个字要用两个地址连续的内存单元来存放&#xff0c;这个字的低位存放低地址单元中&#xff0c;高位字节存…

计算机指令格式_计算机科学组织| 指令格式

计算机指令格式指令格式 (Instruction format ) Instruction format describes the internal structures (layout design) of the bits of an instruction, in terms of its constituent parts. 指令格式按照指令的组成部分描述指令位的内部结构(布局设计)。 An Instruction fo…

ejs获取js变量值_EJS变量(注入值)

ejs获取js变量值Hi! Welcome to NODE AND EJS TEMPLATE ENGINE SERIES. Today, we will talk about EJS variables or how we can inject values? 嗨&#xff01; 欢迎使用NODE和EJS模板引擎系列。 今天&#xff0c;我们将讨论EJS变量或如何注入值&#xff1f; Just like nor…

Visual Basic 9.0 前沿播报·静态篇(六)松弛委托和可为空类型语法增强

本期介绍的两个VB9作为数据开发辅助功能的新特性。CLR在.NET 2.0增加了许多关于委托的新特性&#xff08;但大部分都不为任何语言所支持&#xff09;&#xff0c;其中一个叫做协变的特性允许放松委托与函数绑定时的签名检查&#xff08;C# 2.0支持&#xff09;。为了追求更高的…

3年前的小程序:破解需要delphi IDE 环境的vcl 控件

基本原理&#xff1a;有些vcl组件未注册的话&#xff0c;会显示没有注册的信息&#xff0c;但在设计期间不显示这些信息&#xff0c;表示该组件会检查delphi的ide 环境&#xff0c;解决办法就是让自己的exe带上ide的信息&#xff1b;组件检查ide的办法无非就是使用api查找特定的…

执行POP和PUSH指令后,SS和SP的变化

我们知道push指令是将数据送入栈中&#xff0c;pop指令是将数据从栈顶取出来&#xff0c;8086CPU的入栈和出栈操作都是以字为单位的 比如说将10000H-1000FH这段内存当做栈使用 CPU是通过CS、IP中存放的段地址和偏移地址来知道当前要执行的指令&#xff0c;通过DS和[address]来…

win7 php 上传文件,在LNMP原来的基础上,win7环境下如何上传PHP文件到Linux环境下...

首先&#xff0c;下载一个WINSCP客户端连接主机后&#xff0c;上传文件到自己的保存目录接着进入数据库添加我们的数据库mysql -uroot -p //这个是进入mysql的命令&#xff0c;但是要是你没有加 ln -s /usr/local/mysql/bin/mysql /usr/bin 的话就要输入下面那一行/usr/loc…

HDFC的完整形式是什么?

HDFC&#xff1a;住房发展金融公司 (HDFC: Housing Development Finance Corporation) HDFC is an abbreviation of Housing Development Finance Corporation. It is a well-known housing expansion finance corporation of India which largely makes available housing loa…

将10000H-1000FH这段空间当做栈,初始状态栈是空的,设置AX=001AH,BX=001BH,利用栈,交换AX和BX的数据

程序&#xff1a; mov ax,1000H mov ss,ax mov sp,0010H;设置AX和BX的值 mov ax,001AH mov bx,001BH;压栈 push ax push bx;出栈 pop ax pop bx解释&#xff1a; 在8086中&#xff0c;段寄存器不能直接传值&#xff0c;要通过一般寄存器&#xff0c;所以先将值传到ax中&#x…

php having,having方法

having方法1、对分组统计的结果&#xff0c;进行筛选如果将分分组查询的结果看成一张表的话&#xff0c;having方法类似where语句的功能2、源码&#xff1a;/thinkphp/library/think/db/Query.php/*** 指定having查询* access public* param string $having having* return $th…

Linux:jumpserver介绍(1)

官方网站 JumpServer - 开源堡垒机 - 官网https://www.jumpserver.org/ JumpServer 是广受欢迎的开源堡垒机&#xff0c;是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产&#xff0c;实现事前授权、事中监察、事后审计&…

对一个简单汇编程序分析

程序&#xff1a; assume cs:codesgcodesg segmentmov ax,0123Hmov bx,0456Hadd ax,bxadd ax,axmov ax,4c00Hint 21Hcodesg endsend伪指令&#xff1a; 伪指令是写给编译器看的&#xff0c;CPU不会执行&#xff0c;在源程序中&#xff0c;包括两种指令&#xff0c;一个是…

劈尖等厚干涉条纹matlab,劈尖等厚干涉实验中,k=0级的干涉条纹是条纹,与k级暗条纹对应的空气薄膜的厚度为...

劈尖等厚干涉实验中&#xff0c;k0级的干涉条纹是条纹&#xff0c;与k级暗条纹对应的空气薄膜的厚度为答&#xff1a;暗&#xff0c;kλ/2spampython 编程\nprint(spam[-6:-4])是否报错&#xff1f;(是&#xff1a;则填写报错原因&#xff0c;否&#xff1a;则填写输出结果)答&…

使用OpenCV python模块读取图像并将其另存为灰度系统

In Python, we can use an OpenCV library named cv2. Python does not come with cv2, so we need to install it separately. 在Python中&#xff0c;我们可以使用名为cv2的OpenCV库 。 Python没有随附cv2 &#xff0c;因此我们需要单独安装它。 For Windows: 对于Windows&a…

A4Desk 网站破解

A4Desk是一个不错的Flash站点建站工具&#xff0c;不过生成的swf文件很不爽&#xff0c;主要是1、单击3次就会显示注册对话框&#xff1b;2、会在网站上显示Demo 字样。 如果希望去掉这些信息&#xff0c;按如下步骤操作即可&#xff1a; 一、用A4Desk建立站点并导出。 二、用S…

and和or指令

and指令&#xff1a;逻辑与指令&#xff0c;按位进行与运算 mov al,01100011B and al,00111011B执行后al00100011B&#xff0c;两个为1才为1&#xff0c;所以通过该指令可将操作数对象的相应位设为0&#xff0c;其他位不变 or指令&#xff1a;逻辑或指令&#xff0c;按位进行…

php 上传多个txt文件上传,一个多文件上传的例子(原创)

一个多文件上传的例子(原创)更新时间&#xff1a;2006年10月09日 00:00:00 作者&#xff1a;//filename:multi_upload.phpif($ifupload){$pathAddSlashes(dirname($PATH_TRANSLATED))."\\upload\\";for($i1;$i<8;$i){$files"afile".$i;if(${$files}!&…

DI和SI

si和di是8086CPU中和bx功能相近的寄存器&#xff0c;di和si不能分成两个8位寄存器来使用。下面的3组指令实现了相同的功能&#xff1a; mov bx,0 mov ax,[bx]mov si,0 mov ax,[si]mov di,0 mov ax,[di]我们遇到si和di时&#xff0c;就往bx上靠&#xff0c;基本上bx什么功能di和…

无线智能路由器家长控制宽带

家长对控制孩子的上网问题颇为头痛&#xff0c;其实只要方法用对&#xff0c;控制孩子上网是完全没有问题的。我总结了三条供家长们分享。 6-16岁的孩子正是学习知识&#xff0c;塑造性格最佳时期&#xff0c;辨别事物也最为薄弱。要想控制孩子上网&#xff0c;首先要在思想上引…

求职新玩法:如今用MSN也可以求职

今天在Donews上看到一篇文章说到利用MSN求职&#xff0c;在你的MSN中添加联系人job01hr.com&#xff0c;然后向该联系人发送消息&#xff0c;比如输入&#xff1a;北京 .NET&#xff0c;对方会提示给你搜索到多少项符合的记录&#xff0c;同时还提供命令行帮助你&#xff1a;/h…