web-dev-qa-db-fra.com

Bibliothèque Microsoft Office Android (.doc, .docx, .xls, .ppt, etc.)

Est-ce que quelqu'un connaît une bonne API Java Microsoft Office capable de fonctionner sur Android? Je sais qu'il existe une API Java OpenOffice, mais je n'ai jamais entendu parler de son utilisation sur Android.

Je sais que l'utilisation d'intentions est une autre option, mais quelle est la fréquence des visionneuses de bureau préinstallées sur les différentes distributions Android? Serait-il raisonnable qu'un développeur s'attende à ce qu'un utilisateur ait installé l'un de ces visualiseurs? Est-il raisonnable de leur demander d'installer une de ces applications s'ils n'en ont pas déjà une?

25
matheeeny

Étant donné que la plupart des documents à afficher sont déjà hébergés sur le Web, nous avons choisi d'utiliser un affichage Web intégré qui ouvre le document à l'aide de google docs viewer

Nous avons encore quelques documents stockés localement, mais cette approche ne fonctionne pas. Pour ceux-ci, notre solution consistait à utiliser les applications existantes. Après avoir passé un peu plus de temps avec Android, il semble que la plupart des appareils sont équipés d’une sorte de fonction de lecture de documents/pdf récemment installée. Dans le cas où ils ne disposent pas d'une application capable, nous les dirigeons vers une recherche de marché pour un lecteur gratuit. 

13
matheeeny

Malheureusement, il n'y a pas de contrôle Android intégré pour éditer les fichiers MS Office, ni même pour les afficher! C'est une grosse omission, étant donné qu'iOS possède un support intégré pour l'affichage des fichiers Office. Il ne semble pas y avoir suffisamment d'applications de spectateur sur lesquelles on puisse toujours compter (et elles pourraient ne pas fournir le type d'expérience utilisateur que vous espériez non plus).

Si vous souhaitez afficher ou modifier docx etc dans votre application Android, vous devez intégrer un code tiers qui ajoute cette fonctionnalité. Je ne suis au courant d'aucun code open source préemballé pouvant le faire. Par conséquent, à moins que vous ne souhaitiez créer/porter une solution vous-même, vous devrez obtenir une licence commerciale. 

Comme d'autres l'ont noté, il existe des projets open source dans ce domaine, mais ils ne sont pas empaquetés/portés sur Android. Si vous parveniez à les transférer et à les intégrer, ils ajouteraient une surcharge considérable au téléchargement de votre application Android (par exemple, plus de 80 mégaoctets) et vous auriez ensuite besoin de leur ajouter une interface utilisateur mobile adaptée (voir https: //play.google.com/store/apps/details?id=com.andropenoffice&hl=en_GB pour un exemple de port avec une interface utilisateur qui, à mon avis, n'est pas adapté/convivial pour une application Android.)

Un tel SDK que je connais qui résout ce problème est basé sur l'application SmartOffice:

https://artifex.com/products-smart-office-overview/

Elle est disponible sous forme de bibliothèque sécurisée intégrable prenant en charge l'affichage et (éventuellement) l'édition de documents Office. Vous pouvez contacter [email protected] pour obtenir des informations sur les licences.

Divulgation: Une de mes tâches consiste à travailler sur le code SmartOffice.

8
JosephH

La plupart des visualiseurs Microsoft Document sont lourds et coûteux.

Si vous souhaitez créer vous-même un lecteur, vous devriez jeter un coup d'œil à Apache POI .

7
TomTasche

Une solution appropriée pourrait utiliser Jword dans le lien ci-dessous. Ce n'est pas gratuit mais facile à utiliser. http://www.independentsoft.de/jword/index.html

Utiliser la bibliothèque est aussi simple que cet exemple de code

private String docxRead(String filePath) {
    try {
        WordDocument doc = new WordDocument(filePath);
        String text = doc.toText();
        return text;
    }
    catch (Exception e) {
        Toast.makeText(context, e.getMessage(), Toast.LENGTH_SHORT).show();
        e.printStackTrace();
    }
    return "";
}    
1
masoud
You can use this example for read MS Word document file in Android application.
I give a link below, you follow this for example.
 <https://github.com/AsposeShowcase/Document_Viewer_and_Converter_for_Android>

And follow below link for Aspose Word library for Android.
 <http://www.aspose.com/Android/Word-component.aspx>

**You Mostly use for this to Read MS Word document.**
I hope, you will using these Library and make you application better.
Best of Luck.


[1]: http://www.aspose.com/Android/Word-component.aspx
0
Gundu Bandgar