J'ai développé un composant Android réutilisable qui est fondamentalement une classe. Cette classe a des dépendances de ressources par ex. Certains tirables PNG, certaines mises en page XML, etc., de sorte que cette classe a référencé le fichier R généré automatiquement.Je souhaiterait distribuer ce code dans un seul paquet comme un fichier JAR à d'autres développeurs à utiliser dans leurs applications. P>
J'ai lu que la seule solution possible consiste à distribuer du code avec toutes mes ressources, que d'autres doivent copier dans leur dossier "res" ( Source ). P>
J'ai donc créé un fichier JAR ayant le fichier de classe (dire myClass qui figure dans le package Alors j'ai ajouté le fichier JAR à mon nouveau chemin de construction d'applications à l'aide de Mais quand j'exécute cette nouvelle application, il y a Puis j'ai changé le paquet de MainActivity sur mais quand je viens de copier le fichier java source tel que MainActivity.java et MyClass.java sont dans le package COM.XYZ.Android.app, l'application s'exécute bien. P>
Donc, si je dois distribuer de manière à ce que d'autres utilisateurs n'ont pas besoin de déranger ces packages nommer des choses,
Comment puis-je accomplir cela? S'il vous plaît aider !! p>
dans Android.jar, il existe également des ressources. Comment sont-ils référencés dans un projet? Comment sont-ils utilisés dans les classes Android? Il y a aussi un fichier android.r? P>
N'est-il pas possible de faire la même chose, c'est-à-dire de faire un fichier jar comme Android.jar pour mon code réutilisable? P> com.xyz.android.app code>) et des ressources et essayé de l'utiliser dans ma nouvelle application. p>
Ajouter des jarres externes CODE> OPTION EN ECLIPSE et copié toutes les ressources à mon nouveau dossier RES. (La classe d'activité indique la principaactivité de ma nouvelle application est dans
com.abc.myApplication code>, juste pour le cas si cela peut être utile) P>
java.lang.classcastException code> dans la classe MyClass. J'ai essayé de déboguer de la demande, puis j'ai constaté que dans la classe MyClass, il ne peut pas être résolu "problème. P>
com.xyz.android.app code> (ce qui n'est pas la voie, d'autres développeurs seront heureux de le faire), mais à nouveau le même problème. P>
3 Réponses :
Ce n'est pas si facile à faire pour le moment. Le problème est que le projet utilisant votre pot ne sait pas regarder là-bas pour les érables, etc. La bonne nouvelle est que cela devrait bientôt être possible (espérons-le avec SDK 2.2, qui est rumée à être libérée à l'IO la semaine prochaine). Voir ce blog Post http://mobilebytes.wordpress.com / 2010/04/27 / Android-Outils-Version6-venir / P>
Citation de Google à ce sujet: «Oui, les projets de bibliothèque sont principalement destinés à vous en tant que développeur de partager votre propre code sur vos applications. Il ne s'agit pas de redistribuer des composants réutilisables, à moins que vous ne puissiez pas d'envoyer (ou de poster quelque part). de votre bibliothèque avec une source complète. "
J'ai déjà supposé que le nouveau projet ne sait pas regarder dans le pot pour les ressources. J'ai donc déjà copié les ressources du nouveau projet (comme sur Stackoverflow.com/Questtions/1995004/... ). Maintenant, je veux que mon nouveau projet fonctionne. Donc, je veux savoir que c'est possible? Et si oui comment?
AS NIC FORT NOTÉ, il n'ya rien de bien intégré au projet pour gérer cela et les indications actuelles sont que les modifications à venir aux outils SDK ne peuvent qu'aider un peu. P>
J'organise d'autres outils pour faire face à ce problème. J'espère avoir une documentation de développeur publiée dans quelques jours. P>
Semble prometteur. Je vais vérifier cela!
Dans Android.jar, il y a aussi des ressources. Comment sont-ils référencés dans un projet? Comment sont-ils utilisés dans les classes Android? Il y a aussi un fichier android.r?
Le "fichier android.r" est intégré au système d'exploitation. Vous n'avez pas besoin de le distribuer et les valeurs numériques ne changeront pas. Donc, c'est sûr d'utiliser sans travail supplémentaire.
Quelques articles intéressants que vous avez écrites sur Andparcel.com, merci!
J'ai joué avec Mark Murphy's Colishelper Class à http://github.com/commonsguy / CWAC-colis . En un mot, il s'agit d'une collection de méthodes qui vous permettent d'accéder aux composants de "R" par nom sans avoir à importer "R" dans votre code. P>
Si je comprends votre question, c'est exactement ce que vous voulez. Vous devrez peut-être toujours copier certaines ressources, telles que des styleilles, dans votre projet. P>
Merci pour la réponse. Au moins, jusqu'à ce que Google ne fournisse aucune solution à cela, ce dont j'ai besoin d'un moyen de distribuer le code.