小编dan*_*dan的帖子

检测Android上是否有可用的Internet连接

我需要检测Android设备是否已连接到Internet.

NetworkInfo类提供了一个非静态方法isAvailable()听起来很完美.

问题是:

NetworkInfo ni = new NetworkInfo();
if (!ni.isAvailable()) {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

抛出此错误:

The constructor NetworkInfo is not visible.
Run Code Online (Sandbox Code Playgroud)

安全的赌注是有另一个类返回一个NetworkInfo对象.但我不知道哪个.

  1. 如何让上面的代码段工作?
  2. 我怎么能找到自己在在线文档中需要的信息?
  3. 你能为这种类型的检测提出更好的方法吗?

android internet-connection android-internet

667
推荐指数
6
解决办法
52万
查看次数

Java - 通过POST方法轻松发送HTTP参数

我成功地使用此代码HTTP通过GET方法发送 带有一些参数的请求

void sendRequest(String request)
{
    // i.e.: request = "http://example.com/index.php?param1=a&param2=b&param3=c";
    URL url = new URL(request); 
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();           
    connection.setDoOutput(true); 
    connection.setInstanceFollowRedirects(false); 
    connection.setRequestMethod("GET"); 
    connection.setRequestProperty("Content-Type", "text/plain"); 
    connection.setRequestProperty("charset", "utf-8");
    connection.connect();
}
Run Code Online (Sandbox Code Playgroud)

现在我可能需要通过POST方法发送参数(即param1,param2,param3),因为它们非常长.我想在该方法中添加一个额外的参数(即String httpMethod).

如何能够尽可能少地更改上面的代码,以便能够通过GET或发送参数POST

我希望改变

connection.setRequestMethod("GET");
Run Code Online (Sandbox Code Playgroud)

connection.setRequestMethod("POST");
Run Code Online (Sandbox Code Playgroud)

本来可以做到的,但参数仍然是通过GET方法发送的.

HttpURLConnection任何方法可以帮助吗?有没有有用的Java构造?

任何帮助将非常感谢.

java post http httpurlconnection

310
推荐指数
8
解决办法
78万
查看次数

Android - 打印完整异常回溯以记录

我有一个try/catch块抛出异常,我想在Android设备日志中看到有关异常的信息.

我从开发计算机上用此命令读取了移动设备的日志:

/home/dan/android-sdk-linux_x86/tools/adb shell logcat
Run Code Online (Sandbox Code Playgroud)

我先试了一下:

try {
    // code buggy code
} catch (Exception e)
{
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

但是这不会在日志中打印任何内容.这很可惜因为它会有很多帮助.

我取得的最好成绩是:

try {
    // code buggy code
} catch (Exception e)
{
    Log.e("MYAPP", "exception: " + e.getMessage());             
    Log.e("MYAPP", "exception: " + e.toString());
}
Run Code Online (Sandbox Code Playgroud)

总比没有好,但不是很满意.

你知道如何在日志中打印完整的回溯吗?

谢谢.

android

91
推荐指数
3
解决办法
7万
查看次数

Github:如何签出我自己的存储库

我是GitHub的新手.

我创建了一个GitHub存储库并将其从我的计算机中推出.

现在我需要从另一台计算机上处​​理它.

如何查看我自己的存储库?我应该像其他人的存储库一样分叉吗?
不过,在我自己的存储库中分叉似乎有点傻.

github

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

截断SQLite表(如果存在)?

要在SQLite中截断表,我需要使用以下语法:

DELETE FROM someTable
Run Code Online (Sandbox Code Playgroud)

但是,如果表存在,我该如何截断表?

不幸的是,这会引发错误:

DELETE FROM someTable IF EXISTS
Run Code Online (Sandbox Code Playgroud)

这也不起作用:

DELETE IF EXISTS FROM someTable
Run Code Online (Sandbox Code Playgroud)

谢谢.

sqlite

56
推荐指数
6
解决办法
10万
查看次数

Git - 某些文件被标记为已更改但"git diff"未显示任何内容

我对Git很新,因此也许我在这里遗漏了一些东西.

dan@one:/var/www/$ git status -s
M  GoogleChromeExtension.js
M  ApiClient.js
Run Code Online (Sandbox Code Playgroud)

很明显,2个文件已被更改.
但是当我跑步时:

git diff
Run Code Online (Sandbox Code Playgroud)

没有显示输出.我期待在我的工作副本和最新提交之间进行更改.

我相信昨天一切都在按预期工作......

是不是因为我没有将更改推送到远程服务器?

PS:我正在使用GitHub

谢谢,

git

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

JSON对应一个带属性的XML?

我正在为我的webapp设计一个API.

我想只支持JSON响应(而不是XML),因为它更加简化.

但我刚刚碰到这个XML:

<folders>
    <folder id="123" private="0" archived="0" order="1">Shopping</folder>
</folders>
Run Code Online (Sandbox Code Playgroud)

我想知道相应的JSON是怎样的.我觉得,在这种情况下,XML会更紧凑.

谢谢,丹

xml json

29
推荐指数
5
解决办法
6万
查看次数

HTML5 - 缓存清单在Chrome上运行良好,但在Firefox和Opera上运行不佳

我正在开发一个供离线使用的Web应用程序,因此我需要使用应用程序缓存功能.

一切都在Chrome(15.0.874.106)上运行良好,但在Firefox(7.0.1)和Opera(11.52)上不起作用.

这是我的缓存清单文件cache.manifest.php(我已将其减少到最低限度):

<?php 
    header("Cache-Control: max-age=0, no-cache, no-store, must-revalidate");
    header("Pragma: no-cache");
    header("Expires: Wed, 11 Jan 1984 05:00:00 GMT");
    header('Content-type: text/cache-manifest');
?>CACHE MANIFEST

CACHE:

/app/common/css/reset.css
/favicon.ico
Run Code Online (Sandbox Code Playgroud)

这是"主要"HTML文档的前4行:

<!DOCTYPE html> 
<html manifest="/app/mobile/cache.manifest.php"> 
    <head> 
    <title>MyApp Mobile</title> 
Run Code Online (Sandbox Code Playgroud)

当我尝试将缓存清单(http://www.myapp.com/app/mobile/cache.manifest.php)加载到浏览器中时,文件显示正确,但是当我尝试离线加载页面时,我得到了"无法连接"错误页面.再次,这恰好发生在Firefox和Opera上.

Firebug说" 0 items in offline cache"并且我没有找到检查DragonFly上的应用程序缓存的方法.

我生气了,我不知道如何在Firefox和Opera上有效地调试问题.请帮忙.

谢谢,丹

firefox html5 opera offline application-cache

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

Node.js + Socket.io + MongoDB webapps如何真正异步?

我有一个很好的旧式LAMP webapp.一周前我需要为它添加推送通知机制.
因此,我所做的是在服务器上添加node.js + socket.io并使用node.js每隔10秒轮询MySQL数据库以检查是否有新项:如果有,我会将它们发送到客户端( s)与socket.io.
我对结果非常满意,即使这不是一个正确的实时通知(因为有一个长达10秒的滞后).

现在,我即将构建一个新的webapp,它也需要推送通知.我想知道是否采用与第一种方法相同的方法(我相信它更稳定和成熟),或者完全使用Node.js,而不需要PHP和Apache.至于数据库,我已经决定去MongoDB了.

最后,我的问题是:如果我选择Node.js + Socket.io + MongoDB,我会得到一个真正 接近实时的 webapp吗?我的意思是,一旦将新记录插入MongoDB,是否会触发某种事件,我可以通过node.js捕获,对其进行一些检查,如果相关,则将通知发送给客户端?或者,无论如何都会在数据库服务器端进行某种轮询并延迟,就像我的第一个LAMP webapp一样?

一个相关的问题:你可以在MySQL上构建一个实时的webapp,而不像我在我的第一个应用程序那样进行任何轮询.或者你需要MongoDB(或Redis)?

我希望这个问题不是太傻 - 对不起,我刚开始使用Node.js和co.

谢谢.

sockets near-real-time nonblocking node.js

22
推荐指数
2
解决办法
8568
查看次数

我是否认为OAuth 1.0已被弃用以支持OAuth 2.0?

我正在互联网上寻找关于这方面的一些信息,最后是关于The Oauth 1.0协议的RFC :http://tools.ietf.org/html/rfc5849

您可以在其顶部阅读"已废弃:6749",如果您按照该链接进行操作,则最终会使用OAuth 2.0授权框架 RFC.

基于此,我是否可以安全地推断OAuth 1.0已被弃用以支持OAuth 2.0?

谢谢.

oauth oauth-2.0

17
推荐指数
3
解决办法
4133
查看次数