SrS2225a / custom_uploader

Custom Uploader is a simple, lightweight, and easy to use file uploader built using flutter for android devices that allows you to upload files to a file host of your choice.
MIT License
41 stars 2 forks source link

Themed / Monochrome app icon support #7

Open sebastien46 opened 9 months ago

sebastien46 commented 9 months ago

Feature Description

From Android 13 onward, the launcher can request an app's themed / monochrome variant. I'd like to work on this, if you have a source vector file it would be greatly appreciated. Android Developer Documentation

Screenshots

SrS2225a commented 9 months ago

Thats a great idea! The source icon can always be found in the fastlane conf. Specifically https://github.com/SrS2225a/custom_uploader/blob/master/fastlane/metadata/android/en-US/images/icon.png

If needed, I have also supplied light and dark icons, which have been attached below. I wish you luck, and thanks for taking time time to improve my project :)

app logo PNG-resized app logo BLACK app logo PNG app logo WHITE
sebastien46 commented 9 months ago

Thats a great idea! The source icon can always be found in the fastlane conf. Specifically https://github.com/SrS2225a/custom_uploader/blob/master/fastlane/metadata/android/en-US/images/icon.png

If needed, I have also supplied light and dark icons, which have been attached below. I wish you luck, and thanks for taking time time to improve my project :) app logo PNG-resized app logo BLACK app logo PNG app logo WHITE

I'm sorry to disappoint you @SrS2225a, but it seems I underestimated the difference between regular Android development & Flutter development 😞 I think someone with more Flutter experience can probably easily pull this off, I'll leave a monochrome vector here once I've made it. BTW, are you sure you don't have an SVG file of this image?

SrS2225a commented 9 months ago

That's alright if you cant do it. Flutter is a bit different from normal android development, but still similar so I will provide you with further assistance. I think the issue you are running into is that you cant find where the main root of "android" is; as icons, manifest, etc is handled the exact same way as you would do it with standard android development, so you just need to add adaptive icons as any other app. Android can be found by following the directory path: custom_uploader/android/app/src/main/.

I only went with flutter in the first place because I was planning on having it for ios as well, and wanted an easy way to develop for the two, but because of Apple's walled garden, that never happened. Also, unfortunately I do not have an svg of the app icon, but you could properly put it in a online converter such as https://convertio.co/png-svg/ which you can find plenty of, if not I can ask the original artist to provide me one.

sebastien46 commented 9 months ago

I think the issue you are running into is that you cant find where the main root of "android" is; as icons, manifest, etc is handled the exact same way as you would do it with standard android development, so you just need to add adaptive icons as any other app. Android can be found by following the directory path: custom_uploader/android/app/src/main/.

The main issue I'm having is going in blind because Drawable previews don't work with the Android Studio Flutter Plugin (probably some gradle sync shenanigans)

you could properly put it in a online converter

That wouldn't work, as it would only put the raster in an svg, not create SVG path data, which is what I'm currently doing by tracing the raster shape in Inkscape. But, since the bitmaps you provided don't have clean edges, the edge tracer in Inkscape has a really hard time making it work, so I have to mainly do it by hand.

I can ask the original artist to provide me one.

Could you do that? I would really appreciate it.

SrS2225a commented 9 months ago

The main issue I'm having is going in blind because Drawable previews don't work with the Android Studio Flutter Plugin (probably some gradle sync shenanigans)

Thank you. Yeah, it is because of gradle. It think it's because flutter compiles with dart instead of java. The way I get around this issue is that I open the android subdirectory as its own separate project in Android Studio. See https://docs.flutter.dev/tools/android-studio#android-ide

SrS2225a commented 8 months ago

Hello, just wanted to see how that icon is coming along since it has been pretty quiet here for a while. Unfortunately, I was not able to get back in touch with the artist. I do have their email from when requested the work, so I could try that way, but I wish to respect their privacy.

clach04 commented 7 months ago

you could properly put it in a online converter

That wouldn't work, as it would only put the raster in an svg, not create SVG path data, which is what I'm currently doing by tracing the raster shape in Inkscape. But, since the bitmaps you provided don't have clean edges, the edge tracer in Inkscape has a really hard time making it work, so I have to mainly do it by hand.

I can recommend https://potrace.sourceforge.net/ its definitely easier than by hand and then you can either clean it up or trace that.