'Android add shortcut icon from a url instead from drawable resources

I have an app where i am adding shortcut. I want to add shortcut icon image from URL path(images are stored on server and can be change) instead of using Drawable but i don't know how to do that. I tried to find a lot on this community. Any help?



Solution 1:[1]

If the term used "shortcut icon" is a view or its descendants such as ImageView, then you can set the image, your application receive from the server by doing this :

add dependency to your app.gradle file :

compile 'com.github.bumptech.glide:glide:3.7.0'

and in the activity you can use this method to set the image to the imageview your app receive from the server :

ImageView imageView = (ImageView) findViewById(R.id.image_view);
Glide.with(imageview.getContext()).load("https://url").error(R.drawable.not_found).centerCrop().into(imageview);

Solution 2:[2]

What you could do is first download that icon and store locally and then take that file path and use

ShortcutInfoCompat shortcutInfo = new ShortcutInfoCompat.Builder(this, UUID.randomUUID().toString())
                        .setIntent(intent) // !!! intent's action must be set on oreo
                        .setShortLabel(lable)
                        .setIcon(IconCompat.createWithAdaptiveBitmapContentUri(filePath)).build();
                ShortcutManagerCompat.requestPinShortcut(this, shortcutInfo, null);

Solution 3:[3]

add this in your build.gradle

compile 'com.squareup.picasso:picasso:2.5.2'

now you can load the image using following code

Picaso.with(this).load(urlHere).into(imageView);

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Dushyant Suthar
Solution 2 Prashant
Solution 3 AwaisMajeed