I have an app that sometimes links to imdb. I can do this with http://m.imdb.com/find
or if it is available imdb:///find
. My trouble is I can't find a way to check whether the imdb://
is available before it is too late.
Because the link is clicked on by the user, I can't catch the android.content.ActivityNotFoundException
exception.
Am I missing something obvious?
Solution:
By inazaruk's suggestion I'm now using the follwing code:
public static boolean isUriAvailable(Context context, String uri) {
Intent test = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
return context.getPackageManager().resolveActivity(test, 0) != null;
}
The method must be called with a direct uri to what you are requesting, like imdb:///find
rather than just imdb://
.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…