webView во фрагменте для загрузки файла (как изображение) - PullRequest
0 голосов
/ 29 января 2020

У меня есть несколько комбинаций кодов, но я все еще не могу найти способ заставить загружаемое изображение функционировать. Я дал разрешение на камеру, запись и чтение хранилища. Я думаю, что проблема в Java коде. Ниже мой текущий java фрагмент кода. Я надеюсь, что некоторые из вас могут помочь мне, как заставить код ниже функционировать при возможности загружать фото / использовать камеру или файлы.

Photo of Upload Button needed to be functioning

Текущий Java Код:

 public class DashboardFragment extends Fragment {

     public DashboardFragment() {

     }

     WebView webView2;
     String url = "https://gcs-bn.com/my-account/edit-account/";


     public View onCreateView(@NonNull LayoutInflater inflater,
                              ViewGroup container, Bundle savedInstanceState)
     {

         View v = inflater.inflate(R.layout.fragment_dashboard, container, false);
         webView2 = (WebView)v.findViewById(R.id.webView2);
         webView2.loadUrl(url);
         WebSettings settings = webView2.getSettings();
         settings.setJavaScriptEnabled(true);
         webView2.setWebViewClient(new MyWebViewClient());
         return v;
     }


     private class MyWebViewClient extends WebViewClient{
         @Override
         public void onPageStarted(WebView view, String url, Bitmap favicon) {
             // TODO Auto-generated method stub
             super.onPageStarted(view, url, favicon);
         }

         @SuppressWarnings("deprecation")
         @Override
         public boolean shouldOverrideUrlLoading(WebView view, String url) {
             if (url.startsWith("mailto:")) {
                 //Handle mail Urls
                 startActivity(new Intent(Intent.ACTION_SENDTO, Uri.parse(url)));
             } else if (url.startsWith("tel:")) {
                 //Handle telephony Urls
                 startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url)));
             } else {
                 view.loadUrl(url);
             }
             return true;
         }

         @TargetApi(Build.VERSION_CODES.N)
         @Override
         public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
             final Uri uri = request.getUrl();
             if (uri.toString().startsWith("mailto:")) {
                 //Handle mail Urls
                 startActivity(new Intent(Intent.ACTION_SENDTO, uri));
             } else if (uri.toString().startsWith("tel:")) {
                 //Handle telephony Urls
                 startActivity(new Intent(Intent.ACTION_DIAL, uri));
             } else {
                 //Handle Web Urls
                 view.loadUrl(uri.toString());
             }
             return true;
         }
     } }

1 Ответ

0 голосов
/ 29 января 2020

здесь - лучшая библиотека веб-просмотра, которая управляет максимальной функциональностью.

...