相关疑难解决方法(0)

如何确定android中的MIME类型?

假设我有一个完整的文件路径,如:(/ sdcard/tlogo.png).我想知道它的mime类型.

我为它创建了一个函数

public static String getMimeType(File file, Context context)    
{
    Uri uri = Uri.fromFile(file);
    ContentResolver cR = context.getContentResolver();
    MimeTypeMap mime = MimeTypeMap.getSingleton();
    String type = mime.getExtensionFromMimeType(cR.getType(uri));
    return type;
}
Run Code Online (Sandbox Code Playgroud)

但是当我调用它时,它返回null.

File file = new File(filePath);
String fileType=CommonFunctions.getMimeType(file, context);
Run Code Online (Sandbox Code Playgroud)

filesystems android mime-types

162
推荐指数
11
解决办法
12万
查看次数

`shouldOverrideUrlLoading`真的被弃用了吗?我可以用什么呢?

"shouldOverrideUrlLoading"真的被弃用了吗?如果是这样,我可以使用什么呢?

似乎shouldOverrideUrlLoading已经弃用了针对Android N的应用程序,我需要让应用程序自API 19开始工作,直到最新的Android N(测试版),我使用的是Android N中的一些新功能(如Data Saver),因此定位Marshmallow无法解决这个问题,因为我需要使用这些新功能,这是我使用的代码的一部分:

public boolean shouldOverrideUrlLoading(WebView webview, String url) {
    if (url.startsWith("http:") || url.startsWith("https:")) {
        ...
    } else if (url.startsWith("sms:")) {
        ...
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

这是Android Studio给我的消息:

覆盖'android.webkit.WebViewClient'中不推荐使用的方法此检查报告在指定的检查范围中使用不推荐的代码的位置.

谷歌没有说这种弃用.

我想知道是否使用@SuppressWarnings("deprecation")将让我在API 19上工作直到最新的Android N Beta(及其发布时的最终版本),我无法自己测试,我从未使用过,我需要确定它有效,所以,任何人都能说出来?

android deprecated webview android-webview deprecation-warning

121
推荐指数
3
解决办法
9万
查看次数

Android Webview:禁用CORS

Android是否允许本机应用程序禁用http://(非本地/文件)请求的CORS安全策略?

在我的原生应用程序中,webview通过http://显示远程html,而不是本地/文件系统.这似乎与网络浏览器中的CORS限制相同.

Worakround:ajax请求跨域的native-js桥接器Access-Control-Allow-Origin: *是我的quick'n'irt解决方案.(jsonp或服务器端代理不是一个选项,因为web服务检查客户端的cookie + ip.)

是否可以针对inapp网络视图禁用此政策?

请告诉我,如果有一个简单的标志允许js绕过这个限制,这限制了"原生"应用程序的webview.

android webview cors

19
推荐指数
2
解决办法
2万
查看次数

将JavaScript转换为Java

有没有一种将JavaScript转换为Java的好方法?

我有一个需要转换为Java的JavaScript文件.它是用JavaScript编写的日历组件.

javascript java

16
推荐指数
1
解决办法
5万
查看次数

如何将存储在字节数组中的图像加载到WebView?

大家!我已将大量图片压缩为"pictures.zip"文件.我想将这些图片之一加载到WebView,如下所示:

WebView wv = (WebView)findViewById(R.id.WebView01);
wv.loadDataWithBaseURL(null,"<img src=\"abc.jpg\">", "text/html", "UTF-8", null);
Run Code Online (Sandbox Code Playgroud)

这里,"abc.jpg"是一张已压缩为pictures.zip文件的图片.

  1. 我只想解压缩zip文件中的图片并获取图片的字节流,然后从字节流中将图像加载到WebView.

  2. 我不想解压缩zip文件中的图片,然后将其保存到SD卡然后加载它.

  3. 此外,我不想将pitcture的字节编码为base64,然后将图像加载到WebView,因为这两种方式将非常慢.

android bytearray webview

7
推荐指数
1
解决办法
5500
查看次数

如何检查WebViews发出的HTTP请求

如您所知,加载单个页面时会发送大量请求(图像,脚本,AJAX等).所以我需要得到所有这些请求并检查它们.

所以问题是:我如何检查WebView加载页面时发出的HTTP请求?

我想要:标题,方法,状态代码,响应,cookie.


现在,我有:

 public  void onLoadResource(WebView view, String url){
    Log.d("my-tag", "onLoadResource = "  + url );
}
Run Code Online (Sandbox Code Playgroud)

但这只显示了我的URL.

android httprequest android-webview

7
推荐指数
1
解决办法
4580
查看次数