I want to change the app icons at runtime. I went through the below article:
https://blog.jakelee.co.uk/programmatically-changing-app-icon/
, which talks about using <activity-alias> to change the app icon at run time. I tried it and it works. But I want to change the app icon by downloading it from the server. I know, it is not possible to do using <activity-alias> as this needs to be set in the manifest. I searched, if there is an alternative for this, but couldn't find it. So I want to know whether it is possible to change the app icon, by downloading the icons from the server?
Related
I have recently pushed a React Native app to playstore and used an Icon to represent in playstore.When Dark Mode is enabled my app's playstore Icon's background turns black which makes Icon ugly. Now my doubt is
Do I have to use white background for Icon for all the future apps?
OR
Is there any way to make our Icon to be flexible in both Normal Mode and Dark Mode?
regarding your first question if the issue is only inside of playstore I think light background will not hurt. I dont think google play store offers a way to make this adaptive on their website.
regarding the second one, yes! inside your android project you can place alternative versions of your launcher icon inside of /res/mipmap-night-** resource folder btw it is possible you will need to create it. And also I recommend you actually create /res/mipmap-night-hdpi, /res/mipmap-night-xhdpi etc. to take into account the different screen resolutions. Since you are developing with react you would have to dive into your android project to find the res folder, or alternatively open your project in android studio and you will see it right away. this should change how your app looks on your users home screen
UPDATE
by mistake I had pointed to the drawable-night-** folders in my answer but Launcher icons in android are actually saved in the mipmap folders. I have now corrected this. I also tryed it out and it works (however I had to restart my device for it to take effect. asuming your users dont switch constantly between day and night mode they will always se the right icon for them)
Play Store icon it is a different image that you upload.
Make a complete white (or whatever) background to that image. In the official guidelines, Google says that you shouldn't make a partial background.
There is no "dark" icon in the Google Play Store; if you leave it transparent, it will display the default background color for each state (normal-dark).
I am trying to change app icon dynamically from backend, i don't know if that is possible or not but since we are able to use activity-alias to change icon, this looks feasible.
I've successfully implemented dynamic Android launcher icon switching functionality in my app using multiple activity-aliases with different icons and labels associated with them as detailed in this Chainfire blog post on the topic:
http://www.chainfire.eu/articles/133/_TUT_Supporting_multiple_icons_in_your_app/
And in this StackOverflow answer:
https://stackoverflow.com/a/15249542/1007714
This solution, however, only works for the launcher icon found in the app tray and on the homescreen. The problem I now have is that the icon used at the OS level (such as for multi-tasking, the uninstall popup, or the Application Manager listing) remains the original or becomes the default generic Android icon if you haven't set one at the application level in the manifest.
Has anyone found a solution to this, or does everyone who uses this solution just tolerate a mismatch (or absence) in the icon at the OS level?
I need the Same Application With Different Application Icon. So is there any possibility to selecting the Application Icon(User Can Select) while Installing the Application on Device?
It is not directly clear what You want to do. Do You mean, that a User can choose between some images and then set the image as App icon? I read some, but have not tried it:
How to change an application icon programmatically in Android?
I would like my application icon to be available to other applications.
I understand this is a bit unclear so will try explain:
Applications such as Astros program manager lists applications with their icon. For all apps this is the correct icon as on the launcher, except mine which is displaying the standard android icon. I have set my icon as the manifest using: android:icon="#drawable/runninglate"
This works on the launcher but Astro still shows the default icon from when I create the project (which I deleted a long time ago). I have also tried renaming my icon file to icon.png in case this was a standard. This also failed to work.
I am clearly doing something wrong, or have missed a setting somewhere, can some one point me in the right direction.
Make sure you have your icon in the <application> element, perhaps in addition to having it in the <activity> element of the activity that should appear in the Launcher.
Seems it was a caching issue. I re-flashed my phone today for an update and the correct Icon was shown using the same APK as I was using when it wasn't showing. Maybe a clear data on the displaying app was all that was required!