從XE6升上XE7的專案,使用IOS8.1 SDK遇到以下Compile的問題:
cannot link directly with C:\Users\Tony\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.1.sdk/usr/lib/system/libdispatch.dylib.  Link against the umbrella framework 'System.framework' instead.ld: cannot link directly with C:\Users\Tony\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.1.sdk/usr/lib/system/libdispatch.dylib.  Link against the umbrella framework 'System.framework' instead. for architecture armv7
解決方法:
1. copy以下檔案到專案目錄下
C:\Program Files (x86)\Embarcadero\Studio\15.0\source\rtl\osx\Macapi.Dispatch.pas

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

iOS開發進行到實機測試時,我最常遇到的問題大概是程式秀出以下兩個訊息,遇到時常常搞混忘了怎麼解,筆記一下:
Unable to install package.(e8008015).
這個訊息是表示實機裝置中,未安裝正確的Provision Profile
我自己遇過的情況大概有以下幾種:
1. 下載下來的.mobileprovision檔真的忘了安裝了,開xcode->Window->Organizer->選到裝置的Provisioning Profiles選項,把檔案拖進去即可!
2. 製作的Provision Profile有問題,例如忘了選到此台實機的UDID,或是選錯APPID等…
3. 製作的Provision Profile是App Store用的,此時如果沒有AdHoc的profile在裡頭,就會產生此訊息

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

網路上找到的Delay function好像都是舊版delphi的,只適用在windows,稍微改了一下,現在跨平台也都可以用了!
procedure Delay(msec: LongInt);
var
  Timestart:Tdatetime;
begin
  Timestart := gettime;
  while (gettime - Timestart)*100000000 < msec do
  begin
    Application.ProcessMessages;
  end;
end;

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

IndexingOfStrings
今天在使用Delphi XE6內建的字串system.string時,發現個問題…
從網路上找了個String To Bytes的範例Code,在Windows下測試都沒問題,放到手機上執行卻一直怪怪的,程式碼如下:
function TMainForm.StrToByte(const Value: String): TIdBytes;
var    
  I: integer;
begin    
  SetLength(Result, Length(Value));    
  for I := 0 to Length(Value) - 1 do         
    Result[I] := ord(Value[I + 1])
; //這行造成問題
end;  

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

想要利用XE6的TCameraComponent元件做QRCode Scan的功能,卻發現這個元件連對焦功能都不支援…
研究了一下TCameraComponent元件的原始碼後,發覺其實底層JNI的部份其實都有完整的搬過來,只是TCameraComponent元件沒有開放對焦的功能而已…
只要小小的修改一下TCameraComponent元件,就可以改出這個能力了!
 

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

TabControl與手勢換頁1
TabControl加上手勢操作這應該是未來大部份應用程式的基礎框架,以下就簡單示範如何以手勢左、右控制TabControl換頁:
1. 開一個新的Mobile專案
2. 拉一個TabControl元件到Form上面,並將Align屬性設為Client
3. 在TabControl上按右鍵,選擇Add TTabItem,隨便新增個三、四頁

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

同一個專案在不同電腦上Build出來,要Deployment到手機上時,會出現簽名檔衝突的錯誤訊息
原因是每台機器安裝XE6時,會自動產生一個簽名檔,位置如下:
C:\Users\使用者帳號\AppData\Roaming\Embarcadero\BDS\14.0\debug.keystore
把這個檔案copy到另一台電腦上就可以解決這問題了!

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

XE6出現[INSTALL_FAILED_UID_CHANGED]訊息,無法發佈到裝置上執行,有時不會出現這訊息,會直接以Runtime error訊息的方式呈現
原因:
不同的PC有不同的UID,當同一個專案在不同的PC上Compile前,必需Clean掉先前編譯的中繼檔後再重新Compile
 

無人知曉的Tony 發表在 痞客邦 留言(1) 人氣()

XE6無法顯示已連接裝置-SDK不見了
發生的原因不明,發生時的現象為:
1. 插入裝置時,Target無法秀出裝置型號,當然也無法直接發佈到裝置中執行
2. 原本Target Platforms (Android)樹狀目錄下應該顯示為[Android - Android SDK 22.3 32bit],但卻只顯示[Android - ]

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

從Delphi XE5轉換到XE6時,出現vksVisible未定義的問題
改用TVirtualKeyboardState.Visible取代vksVisible可解決!

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

Delphi XE5的專案轉換到XE6時,出現StringToString未定義的問題
定義use Androidapi.Helpers可解決!

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

生命不能重頭開始,牙齒不能重新再長。
 
壞人會改邪歸正,壞牙可以再補好。
 
罪該萬死的人就會被判死刑,壞到「骨子」裡的牙會被拔掉…嗚嗚…
 
麻醉針不止麻醉了我的牙,連神志都開始有問題了…
 
怎麼兩次拔牙流程完全不同咧?
 
這次是…你想拔哪顆?(還可以自己選喔!)
 
上麻藥…然後醫生就跑去旁邊補另一個病人的牙,叫我坐在那等。
 
奇怪…這次不用照X光片??也不用先吃止痛藥?那拔完麻藥退了怎辦?
 
五分鐘後醫生開始拔我的牙…拔…痛!
 
痛?再上一點麻藥…再拔…還訴痛!
 
還痛?…護士,再拿一管麻藥來…
 
到處亂扎…亂捅…一邊問我「現在沒感覺了對吧?」
 
嗯…的確是沒感覺了…可以試試看~
 
「等一下喔,讓麻藥發揮一下作用,先休息一下」醫生又跑回另一個病人那…
 
等好久喔…麻藥會不會退了?…大概等了快十分鐘…醫生終於回來了~~~
 
真強…一次可以看兩個病人~~~賺錢就是要這樣賺啦!
 
再拔…靠…怎麼還訴會痛??(算了,別說出來,忍一下就過了)
 
就在我忍耐的極限快要爆發的前一秒…呼~~~醫生終於鬆手了~
 
再晚一秒我就要叫出來了…果然拔起來的前一刻最痛~
 
然後,一樣,領藥,回家…
 
喔…我是回公司啦…還沒下班咧…溜班出來拔牙~還得忍著痛,咬著止血綿繼續上班~
 
到公司,嘿…我終於能體會中風的感覺了…嘴巴有半邊完全沒感覺~
 
不過比中風好一點的是,至少我還可以控制出力氣~只是沒感覺而已~
 
然後慘的是…果然開始隱隱作痛了…麻藥退了嗎?不要呀…我還沒吃止痛藥耶!
 
嗚…下週…還要再去看…我真的好想問醫生…你是不是忘了給我先吃藥了?
 
 

無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()

1 2 3
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。