JhtLoadDocView內部相關屬性的修改可經過修改此model實現
複製代碼
文件保存 && 清理等方法
複製代碼
用於設置提示框中的 文字的大小,顏色,位置,背景圖,是否包含警示小圖標等參數
複製代碼
用於設置文件ID,文件名,絕對路徑(本地文件),文件大小等參數
複製代碼
tableView的數據源是一個裝有model的數組,model根據屬性fileAbsolutePath(本地絕對路徑),判斷是否須要下載
複製代碼
《JhtDocViewer》文件用」其餘應用「打開
「其餘應用」文件用《JhtDocViewer》打開
git
App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.
複製代碼
系統會告訴咱們不能直接使用HTTP進行請求,須要在Info.plist新增一段用於控制ATS的配置github
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
複製代碼
即:
web
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeIconFiles</key>
<array>
<string>MySmallIcon.png</string>
<string>MyLargeIcon.png</string>
</array>
<key>CFBundleTypeName</key>
<string>My File Format</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>com.microsoft.powerpoint.ppt</string>
<string>public.item</string>
<string>com.microsoft.word.doc</string>
<string>com.adobe.pdf</string>
<string>com.microsoft.excel.xls</string>
<string>public.image</string>
<string>public.content</string>
<string>public.composite-content</string>
<string>public.archive</string>
<string>public.audio</string>
<string>public.movie</string>
<string>public.text</string>
<string>public.data</string>
</array>
</dict>
</array>
複製代碼
屬性說明:
數組
- (BOOL)application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options {
if (options) {
NSString *str = [NSString stringWithFormat:@"\n發送請求的應用程序的 Bundle ID:%@\n\n文件的NSURL:%@", options[UIApplicationOpenURLOptionsSourceApplicationKey], url];
NSLog(@"%@", str);
if (self.window && url) {
// 根據「其餘應用」 用「本應用」打開,經過url,進入列表頁
[self pushDocListViewControllerWithUrl:url];
}
}
return YES;
}
#pragma mark ApplicationDelegate Method
/** 根據「其餘應用」 用「本應用」打開,經過url,進入列表頁 */
- (void)pushDocListViewControllerWithUrl:(NSURL *)url {
// 根據「其餘應用」 用「本應用」打開,經過要打開的url,得到本地地址
NSString *appFilePath = [[JhtDocFileOperations sharedInstance] findLocalPathFromAppLicationOpenUrl:url];
// 跳轉頁面
DocListViewController *doc = [[DocListViewController alloc] init];
doc.appFilePath = appFilePath;
[_nav pushViewController:doc animated:YES];
}
複製代碼
系統庫:WebKit.framework <br>
三方庫:AFNetworking3.x <br>
複製代碼