کلیدستان

نسخه‌ی کامل: گرفتن ادرس(url) لینک انتخاب شده در webView
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام  دوستان و اساتید عزیز... من دارم یه مرور گر واسه خودم مینویسم با امکانات معمولی ولی یه مشکل برام پیش اومده...من یه قسمت دانلود منیجر به مرورگرم اضافه کردم ولی نمیتونم لینک های دانلود رو از webView بگیرم و به دانلود منیجر بدم. تو برنامم یه پروگرسبار گذاشتم و با کدنویسی مشخص کردم که وقتی پروگرسبار به 100 ینی اخر رسید کد webView.getUrl() اجرا بشه وادرس صفحه رو بگیره ولی وقتی روی لینک های دانلود کلیک میشه webView ادرس رو دریافت نمیکنه وتو رشته ای که تعیین کردم ذخیره نمیکنه...اگه میشه لطف کنین و کمکم کنین ایا راه دیگه ای واسه گرفتن لینک های دانلود از webview هست یا اصلا راه دیگه ای هست که بشه تو webView  روی لینک دانلود کلیک کنیم و برنامه intent بشه تو دانلود منیجر...ممنون میشم اگه کسی راهنماییم کنه...
سلام
میتونید از این تکه کد استفاده کنید

کد پی‌اچ‌پی:
WebView webView;//make sure to initialize  
webView.setWebViewClient(webViewClient);

WebViewClient webViewClient= new WebViewClient(){
 
   @Override
    public boolean shouldOverrideUrlLoading
(WebView  viewString  url){
 
       return true;
 
   }
 
   @Override
    public void onLoadResource
(WebView  viewString  url){
 
       ifurl.equals("http://yoururl.com") ){
 
           // do something
 
       }
 
   }

مرسی که جواب دادین...ولی من این کدها رو گذاشتم تو اکتیویتیم...و یه شرط تعیین کردم که اگه درست بود یه کد رو اجرا کنه ولی اصلا هیچ کاری انجام نمیده...
ممکنه یه جای کار رو فراموش کرده باشید چک کنید.

بیاید با استفاده از Breakpoint و Trace برنامه خودتون رو خط به خط چک کنید ( اون جاهایی که میدونید ممکنه درست کار نکنه)

اینجوری میتونید کدهاتون رو بهتر بررسی کنید
(۱۳۹۴/۱۱/۳۰, ۰۱:۰۷ ق.ظ)mahdi10539 نوشته: [ -> ]ممکنه یه جای کار رو فراموش کرده باشید چک کنید.

بیاید با استفاده از Breakpoint و Trace برنامه خودتون رو خط به خط چک کنید ( اون جاهایی که میدونید ممکنه درست کار نکنه)

اینجوری میتونید کدهاتون رو بهتر بررسی کنید
خیییییلی ممنونم استاد...حق با شما بود من یه جای کار اشتباه کردم..الان درسته و شرطم اجرا میشه....فقط یه سوال البته ببخشیداااا...چجوری باید اطلاعات فایل در حال دانلود رو دریافت کنم...مثلا نام و پسوندش...یا سایزش...بازم ممنونم که راهنمایی میکنین...
خواهش،میکنم

ابتدا ببینید چه برنامه ای داره فایل شمارو دانلود میکنه
برنامه خودتون یا مرورگر پیشفرض و اولیه گوشی یا دانلودمنیجر گوشی و یا ...
تا بعدش بتونیم اطلاعات رو ازش بگیریم
فایل تو برنامه ی خودم دانلود میشه....ولی مشکل ایجاس که نه نام و نه سایز فایل رو نمایش نمیده فقط تونستم یه پروگرسبار و یه تکست ویو واسه نمایش میزان دانلود مشخص کنم مشکل اینجاس سورس کدی که من واسه دانلود استفاده کردم نام و سایز رو که نمایش نمیده هیچ...نام و فرمت فایل رو هم باید از قبل داخل سورس تعیین کرد...مثلا file.jpg.. دیگه هرنوع فایلی رو دانلود کنه با این نام ذخیره میکنه من میخوام و نام و فرمت اصلی رو از سرور دریافت کنه و با اون نام ذخیره کنه...
کسی نمیدونه من باید چه شرطی بذارم واسه webView که لینک های دانلود رو تشخیص بده و لینک رو بده به دانلود منیجر...
(۱۳۹۴/۱۲/۰۴, ۰۵:۰۵ ب.ظ)mahmoud1373 نوشته: [ -> ]کسی نمیدونه من باید چه شرطی بذارم واسه webView  که لینک های دانلود رو تشخیص بده و لینک رو بده به دانلود منیجر...

من اگه جای تو بودم از یه شرط ساده استفاده میکردم چون مبتدی هستم و اون هم این بود که لینک رو بررسی میکردم اگه اخر رشته یکی از فرمت های مثلا  MP3,MP4,APK,EXE بود دانلود میکردمش
ممنون جواب دادی ولی دوست عزیز من خودم همین شرط رو استفاده کردم ینی شرط گذاشتم که چند کاراکتر اخر رشته بعد از اخرین نقطه رو چک کنه اگه مثلا jpg بود بره قسمت دانلود ولی متاسفانه چون در زمان لود شدن لینک صفحه داىم در حال تغییر هستش یه جاهایی که اصلا لینک دانلود نیستش یه هو شرط اجرا میشه...
دنبال یه شرط دقیق تر هستم که کلا لینک های دانلود رو تشخیص بده... اگه کسی راهنماییم کنه ممنون میشم..