2011-02-11 24 views
-2

我有一箇舊後Re-Installing IPhone App From Inside The AppIPhone應用內應用

那舊的文章是不是在得到我想要的東西如此成功,但現在則不過我更深刻,並得出一個結論來問另外一個問題。我需要先描述我的想法,然後告訴我是否可能。

說我有一個iPhone應用程序,它從手機內存中的互聯網下載XCode編譯的項目。編譯後的二進制文件(不知道它是否真的是二進制文件)可以打開,如果我可以通過反射從文件中讀取對象和成員,我可以在我的應用程序中顯示UIView嗎?我的意思是UIViews存儲在已編譯的文件中,並且可以將它們的功能作爲對象提取出來以將它們顯示在我的應用程序中作爲它們的實例?

聽起來不現實嗎?請再考慮一下,因爲花了我20多個小時才找到這個反對我以前的帖子。

+0

回答與否的人可以做到這一點,而不降級我的觀點:) – Neutralizer

+0

我也這麼認爲,這對我來說是一個有趣的問題。 –

回答

9

這絕不允許發生。

+3

蘋果認證指南不允許。 –

+0

你的意思是,這樣的應用永遠不會被批准用於App Store銷售。如果這在技術上是可行的(我不是這麼說的),開發人員願意以其他方式分發它,那是另一個問題。 –

+0

你可以發佈蘋果指南的一部分,讓你回答這個問題嗎? – Neutralizer

0

絕對沒有辦法做到這一點,正如在你最後一個問題的答案中所指出的。同樣,這是沒有必要的,你的另一個問題有很多可以完美工作的選擇。

如果你想顯示的數據,只需從服務器文本或圖像下載,然後實現一個模板系統來呈現它,你想怎麼

4

this document

具體來說:

創建和使用可加載 束的不在IOS支持。

這包括動態加載任何類型的代碼。

0

我見過有人試圖做到這一點,以便能夠安裝破解版的商業應用程序......但是......大多數應用程序花費CENTS。你真的需要盜用他們嗎?如果您購買了手機,那麼您肯定會購買價值幾美元的應用! (好吧,我不是說OP在這種情況下,但這個帖子聽起來很可疑)

+0

這真的不是這個意圖。 – Neutralizer

0

股票iOS沙盒可執行代碼。沒有辦法調用或跳入任何下載的代碼。你不能直接使用任何下載的成員函數。如果沙箱甚至試圖這樣做,它將殺死一個應用程序。

即使您可以在未加密的iOS可執行文件中反編譯方法和函數,應用程序也不會被允許解釋這些反編譯的結果(除非也許您可以弄清楚如何將某些ARM二進制函數完全反編譯爲適合運行的Javascript在UIWebView中,並執行所有轉換離線)。

但是,你可以使用從下載的應用程序中的數據(提取的圖像,聲音,Plist檔案,甚至反對從xibs提取的數據),修改當前正在運行的應用程序。蘋果有一個關於數據驅動應用的WWDC 2010視頻,解釋了一些如何做到這一點。

+0

當你說「...修改當前正在運行的應用程序」。你的意思是我的應用程序可以從裏面啓動一些其他應用程序? – Neutralizer

+0

@Umair - 不,除非已經安裝了第二個應用程序並且已經註冊了適當的URL方案。當前運行的應用程序可以顯示一些下載中包含的新png。 – hotpaw2