2013-07-15 30 views
5

Tôi có ứng dụng hiển thị hình nền được chỉ định trong khi tải ứng dụng. sau đó nó bị treo chạy mã này lúc khởi động:Ứng dụng Delphi XE4 iOS hoạt động trên simualtor nhưng không phải trên thiết bị gỡ lỗi

// unzip own resources like images, data files ettc. 
    FAppDataDirPath := GetHomePath + PathDelim + Application.Title + '.app' + PathDelim; 
    P := FAppDataDirPath + 'assets.zip'; 
    if FileExists(P) then 
    begin 
     Z := TZipFile.Create; 
     try 
     Z.Open(P, zmRead); 
     Z.ExtractAll(FAppDataDirPath + 'Library'); 
     finally 
     Z.Free; 
     end; 
    end 
    ; 

Đây là lỗi tôi nhận được:

enter image description here

+4

Thư mục hoặc thư mục '/ private/var/mobile/Applications/blanked_out/blanked_out_also.app/Library/assets/app_bac' tồn tại trên thiết bị thực tế? –

+0

Thật khó hiểu với tôi. Trên giả lập con đường này tồn tại: "/private/var/mobile/Applications/exampleGuID/example.app/Library" nhưng trên iphone anh ** Thư viện ** một phần không và không thể được tạo ra? – Tom

+0

@KenWhite: Tôi đã tạo một câu hỏi cụ thể hơn tại đây: http://stackoverflow.com/questions/17809533/delphi-xe4-ios-how-to-get-library-path-on-actual-ios-device - I sẽ được hạnh phúc để chấp nhận câu trả lời và cung cấp tiền thưởng cho bạn về câu hỏi này (ngay cả khi vấn đề của tôi không được giải quyết, nó cũng là một trợ giúp lớn để có thể đặt một câu hỏi cụ thể hơn) – Tom

Trả lời

3

Vấn đề là bạn đang sử dụng phương pháp sai để có được các địa điểm.

chuyển sang sử dụng System.IOUtils.TPath, sử dụng TPath.GetHomePath để có được những thư mục nhà, TPath.GetDocumentsPath cho thư mục Documents, và TPath.GetLibraryPath để có được vị trí Library thư mục.

+0

Cảm ơn. Tôi sẽ thử cái này. Tôi hiện đang sử dụng ** GetHomePath ** (cộng với "Thư mục" phần) mà trong sự giúp đỡ được mô tả là "Trên iOS, nó trỏ đến vị trí thiết bị cụ thể của sandbox cho ứng dụng; vị trí iOS thường bao gồm một địa phương và GUID. " - Tôi thấy một số ví dụ trên mạng bằng cách sử dụng này. Tôi sẽ cố gắng giải pháp của bạn tối nay. – Tom

+0

Xem chỉnh sửa cuối cùng của tôi; câu trả lời đầu tiên của tôi khó hơn là cần thiết. Bạn đã đi đúng hướng. :-) –

+0

Tôi có thể xác nhận nó bây giờ hoạt động :) – Tom

Các vấn đề liên quan