我的一个活动中有一个WebView,当它加载一个网页时,该页面从Facebook收集了一些背景数据.
我所看到的是,每次打开和刷新应用程序时,应用程序中显示的页面都是相同的.
我已经尝试将WebView设置为不使用缓存并清除WebView的缓存和历史记录.
我也遵循了这里的建议:如何为WebView清空缓存?
但这一切都不起作用,有没有人有任何想法我可以克服这个问题,因为它是我的应用程序的重要部分.
mWebView.setWebChromeClient(new WebChromeClient()
{
public void onProgressChanged(WebView view, int progress)
{
if(progress >= 100)
{
mProgressBar.setVisibility(ProgressBar.INVISIBLE);
}
else
{
mProgressBar.setVisibility(ProgressBar.VISIBLE);
}
}
});
mWebView.setWebViewClient(new SignInFBWebViewClient(mUIHandler));
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.clearHistory();
mWebView.clearFormData();
mWebView.clearCache(true);
WebSettings webSettings = mWebView.getSettings();
webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
Time time = new Time();
time.setToNow();
mWebView.loadUrl(mSocialProxy.getSignInURL()+"?time="+time.format("%Y%m%d%H%M%S"));
Run Code Online (Sandbox Code Playgroud)
所以我实现了第一个建议(尽管改变了代码是递归的)
private void clearApplicationCache()
{
File dir = getCacheDir();
if(dir!= null && dir.isDirectory())
{
try
{
ArrayList<File> stack = new ArrayList<File>();
// Initialise the list
File[] children = dir.listFiles();
for(File child:children)
{
stack.add(child);
} …
Run Code Online (Sandbox Code Playgroud) 我正在寻找使用NodeJS作为构建API的服务器.
理想情况下,我希望有一个API端点来发送一组信息以及一个可以保存到文件系统的文件.
我见过的大多数示例都是通过表单发送文件,但是我想通过发布请求来执行此操作.
有谁知道我怎么能做到这一点(如果可能的话)?
目前我想要达到的目标是以下几点:
app.post('/Some/Endpoint/', controller.handleSomeEndpoint, function(request, response) {
response.send('Finished Request');
});
exports.handleSomeEndpoint = function(request, response, next) {
var bodyarr = []
request.on('data', function(chunk){
bodyarr.push(chunk);
})
request.on('end', function(){
console.log( bodyarr.join('') );
})
}
Run Code Online (Sandbox Code Playgroud)
但是如果我按照以下方式运行curl命令,则数据和结束永远不会被调用:
curl http://127.0.0.1:5000/Some/Endpoint/ -F 'test=@test_file'
Run Code Online (Sandbox Code Playgroud)
干杯,马特
如何在 Web 上通过 Firebase Messaging SDK使用通知操作?
我一直在尝试让 gcloud 在 Travis 上处于可用状态,但我似乎无法通过这gcloud auth activate-service-account
一点。
当它运行时,我只会收到以下错误:
ERROR: (gcloud.auth.activate-service-account) PyOpenSSL is not available.
See https://developers.google.com/cloud/sdk/crypto for details.
Run Code Online (Sandbox Code Playgroud)
我已经尝试过 apt-get 和 pip 安装export CLOUDSDK_PYTHON_SITEPACKAGES=1
,但似乎没有任何效果。
有没有人有任何想法或替代方案?
这是 Travis 版本 Ubuntu 14.04。
如果我从 travis 上的文档运行命令,我会收到以下错误:
usage: gcloud auth activate-service-account ACCOUNT --key-file KEY_FILE [optional flags]
ERROR: (gcloud.auth.activate-service-account) too few arguments
Run Code Online (Sandbox Code Playgroud)
这让我觉得我必须有一个ACCOUNT
参数,但是在使用未加密的服务帐户密钥在本地运行命令后,我知道不需要它(除非发生了变化)。
我唯一能想到的另一件事是文件没有被正确解密或者命令本身在 Travis 中不满意:
- gcloud auth activate-service-account --key-file client-secret.json
Run Code Online (Sandbox Code Playgroud)
只是倾倒了大量日志来弄清楚发生了什么。(向@Vilas 大喊大叫寻求他的帮助)
看起来gcloud
已经安装在节点的 VM 上,但它是一个超旧版本。
$ which gcloud
/usr/bin/gcloud
$ gcloud --version …
Run Code Online (Sandbox Code Playgroud)