2

I'm using a Library found on GitHub in my App, and I have a concern..
When compiling/Publishing to the PlayStore, how do I protect from Library changes?

In other words, which of the following are true?


(A) - Does it continue calling code from the repository itself, even once it's on the PlayStore?
(or)
(B) - Does it compile the Library code into my App, prior to being Published?
(or)
(C) - Should I download the Library myself and include it in my package first, prior to Publishing?

I simply want to protect my App, in the event that the Library gets changed or deleted somehow..
I apologize in advance, as I'm still learning this stuff. Thanks.

Studio2bDesigns
  • 578
  • 5
  • 12
  • Option "C" seems way tedious, besides if library is unpublished let's assume that the author has good reason. – Enzokie Mar 05 '19 at 12:56

1 Answers1

1

A - Yes, unless you include it in the library in your own app. B - Yes C - Yes if you would like to keep the library in-app.

See this answer it might help.

Ryan Godlonton-Shaw
  • 584
  • 1
  • 5
  • 18
  • I interpret question A as _"If I build against library X, will it fetch code from X's repository **at runtime** and execute that?"_. To which I would answer _"Very unlikely, but not impossible"_. – Michael Mar 04 '19 at 13:22
  • @ryan-godlonton-shaw Let me rephrase my Question: Should I download the Libraries I use in my App, and import them manually, before I publish the App? (in order to protect myself in case the Library gets changed by the original author, or deleted somehow)..? – Studio2bDesigns Mar 04 '19 at 13:52
  • Yes you should. :) – Ryan Godlonton-Shaw Mar 04 '19 at 13:53
  • Create an AAR or JAR file. – Ryan Godlonton-Shaw Mar 04 '19 at 13:54
  • @Michael I'm simply trying to make sure the Libraries I'm using in my App (which I'm currently including by using `implement` (formerly `compile`) followed by the appropriate Library name/repo, in my build file), doesn't somehow get **changed** or **deleted** after I publish my App.. So I'm just trying to make sure I understand how this all works.. Do I need to download and import the raw Library files/code into my App manually, prior to publishing my App, instead of using the build file to `implement`/`compile` the repo? – Studio2bDesigns Mar 04 '19 at 13:57
  • @RyanGodlonton-Shaw Ok great, thank you for the answer! So I assume I can download the AAR or JAR file from the Library's GitHub repository, correct? And then do I just simply Import it from within Android Studio's file menu, and it's good to go? And I can then delete the `implement` or `compile` lines from the Build file right? – Studio2bDesigns Mar 04 '19 at 13:59
  • @ryan-godlonton-shaw If the Library on GitHub doesn't list any links for an AAR/JAR file to be downloaded, could you tell me how to create an AAR/JAR file for the Library I'm using, in such a case? I apologize if this is a common task, I'm fairly new to this, since I've always just "compile" or "implement"-ed the Library. But now that I'm Publishing for the first time, I need to know how to actually include the Library code in my App itself. Please and thank you. – Studio2bDesigns Mar 06 '19 at 14:55