2011-08-08 6 views

Répondre

2

Il n'y a pas beaucoup de documentation pour mixer PhoneGap et ObjC, mais here is some example cod e qui vous permet d'intégrer PhoneGap avec une application ObjectiveC. Pour la visionneuse de PDF, vous pouvez utiliser des fonctions de base telles que QuickLook ou UIWebView d'Apple, ou des fonctions plus avancées comme PSPDFKit.

Pour Android, vous pouvez simply search for an Intent that is capable of displaying pdf (comme Adobe Reader officiel pour Android) ou d'intégrer un lecteur PDF complet vous-même. There's an open source project for that, mais il semble pas tout à fait complet. Ou consultez apv, ou droidreader, qui est GPLv3.

3

Je n'ai que l'expérience de l'iOS phonegap. La solution qui a fonctionné pour moi est de faire un plugin qui ouvre un webview natif qui utilise iOS Viewer PDF natif. La façon de faire fonctionner cela est de suivre les instructions sur ce site.

http://spin.atomicobject.com/2010/12/07/updating-phonegap-s-childbrowser-plugin-to-handle-local-files/

Ce lien modifie un plugin existant, "navigateur enfant" pour utiliser l'affichage natif WebView format PDF. Le plugin chilbrowser original peut être trouvé here.

Pour vous donner une meilleure idée de ce que cela va être, voici mon appel javascript que j'ai mis dans mon application sencha.

PhoneGap.exec("ChildBrowserCommand.showFilePage", GlobalVar.localRoot + "/" + record.get("FilePath")); 

C'est à l'intérieur du gestionnaire pour l'buttonTap à l'intérieur du sencha, en appuyant sur le bouton appellera alors la méthode objective C « showFilePage ». Le paramètre est le chemin de fichier que le plugin utilisera.

Voici la partie Objective C (encore une fois, vous devez suivre les liens pour obtenir des instructions complètes)

- (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]; 

} 
0

Salut il suffit d'utiliser la balise object HTML5, vous pouvez ajouter, swf, pdf, etc ..

Questions connexes