Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android webview加载URL(contentprovider示例_Android_Webview_Android Contentprovider - Fatal编程技术网

Android webview加载URL(contentprovider示例

Android webview加载URL(contentprovider示例,android,webview,android-contentprovider,Android,Webview,Android Contentprovider,我发现webview loadUrl()方法适用于多种类型: 最后我也看到了这一点 content://指向正在发布内容的ContentProvider的URL 可用于流媒体 从 content://指向正在发布内容的ContentProvider的URL 可用于流媒体 我搜索了很多关于webview如何使用“content://”URL加载网页的示例。我得到了一个链接 但这还不完全 我是一个初学者,所以我不了解内容提供商。请给我一个使用loadUrl加载网页的示例(“content://pa

我发现webview loadUrl()方法适用于多种类型: 最后我也看到了这一点

content://指向正在发布内容的ContentProvider的URL 可用于流媒体

content://指向正在发布内容的ContentProvider的URL 可用于流媒体

我搜索了很多关于webview如何使用“content://”URL加载网页的示例。我得到了一个链接

但这还不完全

我是一个初学者,所以我不了解内容提供商。请给我一个使用loadUrl加载网页的示例(“content://package webview中的名称/htmlfile.html”)

例如:webview.loadUrl(“content://package name/htmlfile.html“)


给我一个例子,如果它解释了它或github代码链接,那应该很好。

WebView是Android视图类的一个例子,它允许您将网页显示为活动布局的一部分。默认情况下,WebView只显示网页

向应用程序添加网络视图

要向应用程序添加网络视图,您可以在活动布局中包含
元素,或者在
onCreate()
中将整个活动窗口设置为网络视图

加载网络视图

要在WebView中的WebView中加载网页,请使用
loadurl()

要加载本地可用的HTML文件,请将HTML文件放在android/assets文件夹中

webView.loadUrl("file:///android_asset/www/termofservice.html);
除非您有特定的用户需求,否则不应使用content://协议加载HTML页面,而应使用file://加载脱机文件,使用
http://
加载远程服务器上可用的文件

但是,在所有这些都起作用之前,您的应用程序需要具有访问internet的权限,您可以通过在清单上标记以下内容来获得:

<manifest ...>
     <uses-permissions android:name = "android.permission.INTERNET"/>
</manifest... >
如果用户拒绝了您的特定权限,您可以在加载webView之前对权限进行自检

int permissionStatus = ActivityCompat.checkSelfPermission(application, Manifest.permission.INTERNET);
    if (permissionStatus == PackageManager.PERMISSION_GRANTED)
        return true;
    else if (permissionStatus == PackageManager.PERMISSION_DENIED)
        return false;
    else
        return false;

WebView是Android View类的一个示例,它允许您将网页显示为活动布局的一部分。默认情况下,WebView只显示网页

向应用程序添加网络视图

要向应用程序添加网络视图,您可以在活动布局中包含
元素,或者在
onCreate()
中将整个活动窗口设置为网络视图

加载网络视图

要在WebView中的WebView中加载网页,请使用
loadurl()

要加载本地可用的HTML文件,请将HTML文件放在android/assets文件夹中

webView.loadUrl("file:///android_asset/www/termofservice.html);
除非您有特定的用户需求,否则不应使用content://协议加载HTML页面,而应使用file://加载脱机文件,使用
http://
加载远程服务器上可用的文件

但是,在所有这些都起作用之前,您的应用程序需要具有访问internet的权限,您可以通过在清单上标记以下内容来获得:

<manifest ...>
     <uses-permissions android:name = "android.permission.INTERNET"/>
</manifest... >
如果用户拒绝了您的特定权限,您可以在加载webView之前对权限进行自检

int permissionStatus = ActivityCompat.checkSelfPermission(application, Manifest.permission.INTERNET);
    if (permissionStatus == PackageManager.PERMISSION_GRANTED)
        return true;
    else if (permissionStatus == PackageManager.PERMISSION_DENIED)
        return false;
    else
        return false;


你想做什么?展示你尝试过的
“但还不完整。”
-你这是什么意思?实际上我是一个初学者。我只是创建了一个webview项目,并使用webview和loadUrl(“content://package name of other apps/html file”)进行了布局但是webview没有显示该示例不完整。或者没有完整的代码。pskinkso您是否创建了自己的自定义
ContentProvider
?您想做什么?显示您尝试了什么
,但这还不完整
-这是什么意思?实际上我是一个初学者。我刚刚创建了一个webview项目,并使用webview和loadUrl(“content://package name of other apps/html file”)进行了布局但是webview没有显示该示例不完整。或者没有完整的代码。pskinkso您是否创建了自己的自定义
ContentProvider
?我知道这个兄弟。我想要一个使用内容uri加载网页的示例。您尝试加载的HTML文件位于何处?使用内容提供商执行此特定任务可能非常困难ing,你需要有一个很好的理由来解释为什么它对你不起作用,例如,如果HTML文件不在你的AppDir中,实际上,我是说我想做一个内容提供商,把我的文件放在data/data中的我的包名文件夹或android文件夹中,就像其他应用一样,在文件系统上有谷歌新的安全限制,这会更容易更安全的做法是将其放在资产目录中。这对您有用吗?我编辑了我的问题。我知道这一点,感谢您的帮助。请再次检查我的问题。我知道这个兄弟。我想要一个使用内容uri加载网页的示例。您尝试加载的HTML文件在哪里?使用内容提供商执行此特定任务k可能会很痛苦,你需要有一个很好的理由来解释为什么它对你不起作用,例如,如果HTML文件不在你的AppDir中,实际上,我是说我想做一个内容提供商,把我的文件放在data/data的包名文件夹或android文件夹中,就像谷歌对文件系统的新安全限制下的其他应用一样,它将其放在资产目录中会更容易、更安全。这对您有用吗?我编辑了我的问题。我知道这一点,感谢您的帮助。请再次检查我的问题