The coding round begins.
In the final week of community bonding apart from the general discussion of the project schedule, I set up the project and tested the API which lets us check whether a certain media is already on commons.
Diving deep I found out that I had to replicate some EXIF modifications so that API results are accurate.
What is EXIF data anyway?
Exchangeable Image File Format (EXIF) is a standard that defines specific information related to an image or other media captured by a digital camera. It is capable of storing such important data as camera exposure, the date/time the image was captured, and even GPS location.
I read about the concerns and importance of EXIF data and modification required to ensure that no personal information is linked to the file while uploading. As changing this data changes the SHA1 of the image I had to do the same modification to confirm that the SHA1 of the image is the same as if it was uploaded from within the app.
As soon as I did this modification on the image, the API results were accurate and I could move forward.
The first week of Google Summer of Code.
The first week was pretty exciting for me because I was from a Java background and I decided to code the custom-selector in Kotlin as it is the new standard language for native android development. Learning about a new language and its possibilities is always exciting, isn’t it?
Later this week I learned about the Dagger, which is a dependency injection framework to facilitate dependency injection in android, and implemented it to inject the view model into the class.
I am almost done with the basic UI structure of the selector and ready to go deep into the API and check for uploads and make it work.
Wish me luck.