如何为手机屏幕应用程序嵌入PDF查看器?我决定使用PhoneGap + Sencha Touch为iOS和Android开发应用程序。
答案 0 :(得分:3)
我只有iOS手机空间体验。对我有用的解决方案是制作一个插件,弹出一个使用iOS原生pdf查看器的原生webview。实现这一目标的方法是按照本网站上的说明进行操作。
此链接修改现有插件“子浏览器”以使用本机webview显示pdf。可以找到原始的chilbrowser插件here。
为了让您更好地了解它会是什么样子,这是我在我的sencha应用程序中添加的特定javascript调用。
PhoneGap.exec("ChildBrowserCommand.showFilePage", GlobalVar.localRoot + "/" + record.get("FilePath"));
这是在sencha内的buttonTap的处理程序内,按下按钮然后将调用目标C方法“showFilePage”。该参数是插件将使用的文件路径。
这是Objective C部分(同样,您应该按照链接获取完整说明)
- (void) showFilePage:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options // args: url
{
NSLog(@"showFilePage entered: ");
if(childBrowser == NULL)
{
childBrowser = [[ ChildBrowserViewController alloc ] initWithScale:FALSE ];
childBrowser.delegate = self;
}
PhoneGapViewController* cont = (PhoneGapViewController*)[ super appViewController ];
childBrowser.supportedOrientations = cont.supportedOrientations;
[ cont presentModalViewController:childBrowser animated:YES ];
NSString *path = (NSString*) [arguments objectAtIndex:0];
NSLog(@"Our argument 0 is: %@",[arguments objectAtIndex:0]);
NSLog(@"The url is: %@",path);
[childBrowser loadFileURL:path];
}
答案 1 :(得分:2)
没有太多关于混合PhoneGap和ObjC的文档,但here is some example cod e允许您使用ObjectiveC-Application嵌入PhoneGap。对于PDF查看器,您可以使用Apple的QuickLook或UIWebView等基本版本,也可以使用PSPDFKit等更高级的版本。
对于Android,您可以simply search for an Intent that is capable of displaying pdf(如Adobe的Android官方Reader)或自行集成完整的PDF查看器。 There's an open source project for that,但看起来不太完整。或者查看apv或droidreader,即GPLv3。
答案 2 :(得分:0)
您只需使用HTML5对象标记,即可添加,swf,pdf等。