1

Quelle est la meilleure façon d'utiliser une bibliothèque externe mais avec des modifications personnalisées? Par exemple, j'utilise une librairie emoji mais je voudrais changer une partie du code de chargement d'emoji pour charger 8 emojis par ligne au lieu de 10. Cette modification n'affecterait que 1 fichier et un code minimal. J'ai essayé de soumettre une requête de tirage avec une méthode de construction qui définirait le nombre d'emojis par rangée mais elle a été rejetée. Je peux compiler la bibliothèque avec mes modifications personnalisées et l'importer dans mon projet, mais la bibliothèque d'origine change assez rapidement. Comment puis-je conserver mes modifications personnalisées ET suivre le référentiel source facilement?Comment utiliser la bibliothèque externe avec des changements locaux?

Mon processus actuel est: Modifications de base> Compiler AAR> Importer AAR> Détecter les erreurs> Réinitialiser la branche personnalisée à Maître> Recréer les modifications> Compiler AAR> Fonctionne correctement!

Plus souvent qu'autrement, lorsque les changements de Maître, je dois remettre ma branche à maîtriser et recréer les changements qui est un peu long.

Répondre

1

Je suggère que vous mainteniez une fourche de la bibliothèque (je suppose que c'est sur Github - les fourches sont faciles à tenir à jour avec en amont), puis utilisez Jitpack.

allprojects { 
    repositories { 
     ... 
     maven { url 'https://jitpack.io' } 
    } 
} 

Ensuite, importer une balise (ou commettre hachage):

dependencies { 
    compile 'com.github.User:Repo:Tag' 
} 
+0

Ceci est une amélioration par rapport à la méthode actuelle, je me sers. Cela éliminerait les étapes de compilation et d'importation AAR, ce qui est génial! Avez-vous des suggestions pour garder mes fourches à jour avec le maître? Je peux regarder un repo pour les changements mais sur les dépôts populaires, il y a BEAUCOUP de changements! –

+1

Malheureusement rien au-delà de "mettre sur le calendrier". Je suis sûr que vous pourriez automatiser quelque chose, mais la mise à jour des dépendances est quelque chose que vous devriez probablement faire (et tester) à la main. Github le rend facile au moins - un de mes forks dit maintenant que je suis 412 commets derrière pinterest: master et a un bouton Pull Request pour que je puisse facilement me mettre à jour. –

+1

Merci pour les suggestions! J'ai un projet avec une vingtaine de dépendances. Quel processus dois-je utiliser pour m'assurer qu'ils sont tous à jour? Y at-il un bouton qui vérifie automatiquement pour vous dans Android Studio parce que je vérifie manuellement maintenant. –