我想創建一個應用程序,該應用程序將打開特定的文件類型,主要來自保存箱。我知道我需要在屬性列表中設置我的應用程序能夠打開某些文件擴展名,但我該如何閱讀該文件?例如,當用戶在「打開」菜單中觸摸我的應用程序圖標時,我的應用程序將如何從該文件獲取數據?它將是一個ASCII文件,我想從它讀取數據到內存中。具體來說,它將讀取.obj文件。 *注意:我對C語言比Objective-C更精通,所以越具體越好。從另一個應用程序的「打開」菜單中打開文件
1
A
回答
2
您的應用程序需要提供應用程序委託,即實現UIApplicationDelegate
協議的類。在該類中,您必須覆蓋方法application:openURL:sourceApplication:annotation:
。只要您的應用程序處理文件,iOS就會調用此方法。
這是一個簡單的示例實現,可以處理文件URL
- (BOOL) application:(UIApplication*)application
openURL:(NSURL*)url
sourceApplication:(NSString*)sourceApplication
annotation:(id)annotation
{
if (! [url isFileURL])
return NO;
NSString* filePath = [url path];
// Insert code here that processes the file
// Clean up after you processed the file
NSFileManager* fileManager = [NSFileManager defaultManager];
[fileManager removeItemAtPath:filePath error:nil]
// Indicate that you were able to process the file
return YES;
}
如果您的應用程序還沒有運行,iOS的調用幾個其他的應用程序的委託方法第一,其次是這種方法。例如,您的應用程序委託可以覆蓋application:didFinishLaunchingWithOptions:
並檢查作爲參數傳入的字典的內容。這使您有機會接受或拒絕URL。
另一個簡單的例子:
- (BOOL) application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
BOOL canHandleURL = NO;
NSURL* url = [launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
if ([url isFileURL])
canHandleURL = YES;
return canHandleURL;
}
有關其他信息,我想再說一遍,你看了關於UIApplicationDelegate protocol蘋果文檔rmaddy的建議。
相關問題
- 1. 從另一個應用程序在Osmand中打開gpx文件
- 2. 如何打開在另一個應用程序中打開的文件
- 3. 從另一個程序中打開一個應用程序
- 4. 從另一箇中打開另一個JavaFX應用程序?
- 5. 從我的應用程序打開另一個應用程序?
- 6. 打開一個在線應用程序來打開txt文件
- 7. 我的應用程序無法打開「打開在...」菜單
- 8. 在另一個應用程序中打開文件
- 9. Android - 用另一個特定的應用程序打開文件
- 10. 打開一個文件,並從Python程序中打開的文件中輸入
- 11. 打開另一個應用程序從我的應用
- 12. 如何從android中的另一個apllication打開應用程序?
- 13. 調用一個文本菜單打開
- 14. 從RCP應用程序的幫助菜單中打開pdf
- 15. 如何從Android的另一個應用程序中打開應用程序?
- 16. Chrome打包的應用程序:打開另一個應用程序
- 17. Ext JS4如何從菜單打開文件打開對話框
- 18. 從webview中打開應用程序菜單項
- 19. 從另一個打開的應用程序問題
- 20. 打開另一個應用程序從反應原生的iOS應用程序
- 21. 是否可以用菜單選項打開另一個菜單?
- 22. 打開一個應用程序從我的Android應用程序
- 23. 從WinJS應用程序打開一個PDF文件
- 24. Xamarin使用Rivets組件打開另一個應用程序
- 25. 在另一個應用程序中打開一個Android應用程序
- 26. 從Android的另一個應用程序打開默認日曆應用程序
- 27. 如何從我的應用程序打開另一個應用程序?
- 28. 從我的應用程序打開pdf到另一個pdfviewer應用程序
- 29. 從我們的應用程序打開另一個應用程序?
- 30. android:我如何從我的應用程序打開另一個應用程序?