Handle youtu.be URLs

This commit is contained in:
blankie 2022-07-28 20:56:45 +07:00
parent 747d32dddf
commit e222867ec6
Signed by: blankie
GPG Key ID: CC15FC822C7F61F5
1 changed files with 15 additions and 8 deletions

View File

@ -56,7 +56,8 @@ public class ShareActivity extends Activity {
: null; : null;
logVariable("host", host); logVariable("host", host);
if (host == null || (!host.equals("youtube.com") && if (host == null || (!host.equals("youtube.com") &&
!host.endsWith(".youtube.com"))) { !host.endsWith(".youtube.com") &&
!host.equals("youtu.be"))) {
Toast.makeText(getApplicationContext(), R.string.non_youtube_url, Toast.makeText(getApplicationContext(), R.string.non_youtube_url,
Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show();
return; return;
@ -69,14 +70,20 @@ public class ShareActivity extends Activity {
Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show();
return; return;
} }
if (!path.toLowerCase(Locale.ROOT).startsWith("/shorts/")) {
Toast.makeText(getApplicationContext(), R.string.non_shorts_url,
Toast.LENGTH_SHORT).show();
return;
}
final String[] pathSegments = urlParsed.getPath().split("/"); String videoId = null;
if (pathSegments.length != 3) { if (host.equals("youtu.be")) {
final String[] pathSegments = urlParsed.getPath().split("/");
if (pathSegments.length == 2) {
videoId = pathSegments[1];
}
} else if (path.toLowerCase(Locale.ROOT).startsWith("/shorts/")) {
final String[] pathSegments = urlParsed.getPath().split("/");
if (pathSegments.length == 3) {
videoId = pathSegments[2];
}
}
if (videoId == null || videoId.isEmpty()) {
Toast.makeText(getApplicationContext(), R.string.non_shorts_url, Toast.makeText(getApplicationContext(), R.string.non_shorts_url,
Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show();
return; return;