如何从手机的下载文件夹中打开html文件?

x7yiwoj4  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(348)

我试图从下载文件夹中打开一个html文件,但是我在webview中看不到它,它只在我从同一个应用程序(assets文件夹)将它加载到html时才加载我这是我的代码
主要活动

public class MainActivity extends AppCompatActivity {

    private static final int RQS_OPEN_DOCUMENT_TREE = 2;
    private static final String TAG = "";

    Button buttonVerCurso;
    WebView webView;
    TextView textInfo;
    String urlCurso = "";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textInfo = (TextView) findViewById(R.id.info);
        buttonVerCurso = (Button) findViewById(R.id.abrirCurso);
        buttonVerCurso.setOnClickListener(buttonVerCursoOnClickListener);
    }

    View.OnClickListener buttonVerCursoOnClickListener = new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            Intent intent = new Intent();
            intent.setAction(Intent.ACTION_OPEN_DOCUMENT);
            intent.setType("*/*");
            String[] extraMimeTypes = {"text/*"};
            intent.putExtra(Intent.EXTRA_MIME_TYPES, extraMimeTypes);
            intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
            intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            intent.setFlags(Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION);
            intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            intent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
            startActivityForResult(intent, RQS_OPEN_DOCUMENT_TREE);
            Toast.makeText(MainActivity.this,
                    "Seleccione el archivo html de su curso",
                    Toast.LENGTH_LONG).show();
        }
    };

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        textInfo.setText("");
        webView = (WebView) findViewById(R.id.webView);
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);

        if(resultCode == RESULT_OK && requestCode == RQS_OPEN_DOCUMENT_TREE){

            ClipData clipData = data.getClipData();

            if(clipData == null){
                urlCurso = data.getData().toString();
            }else{
                urlCurso = "clipData != null\n";
                for(int i = 0; i < clipData.getItemCount(); i++){
                    ClipData.Item item = clipData.getItemAt(i);
                    Uri uri = item.getUri();
                    urlCurso = uri.toString();
                }
            }

        }
        webView.loadUrl(urlCurso);
        textInfo.append(urlCurso);
        Log.i(TAG, urlCurso);
    }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题