M1 공유 타겟(U1)+M2 저장 진행 알림: ACTION_SEND 인텐트 필터+ShareTarget/SharePayload(RED 7건)+루트 타이머 큐 전송(am start 인텐트 E2E로 서버 큐 반영 실증), 오프라인 저장 Android ProgressBar 노티(5% 스로틀)→폰 저장 완료 전환(34MB E2E, Report(1) 되덮어쓰기 방지). 154/154 GREEN
This commit is contained in:
parent
69094595a5
commit
04ff0ff93d
7 changed files with 166 additions and 6 deletions
18
VideoDownloader.Mobile.Core/SharePayload.cs
Normal file
18
VideoDownloader.Mobile.Core/SharePayload.cs
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace VideoDownloader.Mobile;
|
||||
|
||||
/// <summary>M1 공유 타겟(U1): 다른 앱에서 공유받은 텍스트에서 전송할 URL 추출.
|
||||
/// 유튜브 공유 시트는 "제목 + https://youtu.be/..." 형식 — 텍스트 중 첫 http(s) URL.</summary>
|
||||
public static partial class SharePayload
|
||||
{
|
||||
[GeneratedRegex(@"https?://[^\s]+")]
|
||||
private static partial Regex UrlRegex();
|
||||
|
||||
public static string? ExtractUrl(string? sharedText)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(sharedText)) return null;
|
||||
var m = UrlRegex().Match(sharedText);
|
||||
return m.Success ? m.Value.TrimEnd(')', ']', '}', ',', '.', ';') : null;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue