【问题标题】:Getting device network urls calls获取设备网络 URL 调用
【发布时间】:2014-04-15 20:13:08
【问题描述】:

我正在尝试构建一个应用程序,为用户提供有关其网络使用情况的统计信息,

从 3G/Wifi 上网到应用网络使用。

我要查找的主要重要数据是网络调用的 url。

我有下一个代码,用于查找浏览器历史记录:

private void getBrowserHistory()
{
    String[] proj = new String[]{Browser.BookmarkColumns.TITLE, Browser.BookmarkColumns.URL};
    String sel = Browser.BookmarkColumns.BOOKMARK + " = 0"; // 0 = history, 1 = bookmark
    Cursor mCur = this.managedQuery(Browser.BOOKMARKS_URI, proj, sel, null, null);
    this.startManagingCursor(mCur);
    mCur.moveToFirst();

    if (mCur.moveToFirst() && mCur.getCount() > 0)
    {
        while (mCur.isAfterLast() == false)
        {
            String title = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.TITLE));
            String url = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.URL));
            Log.d(LOG_TAG, "Site title: " + title);
            Log.d(LOG_TAG, "Site url: " + url);
            mCur.moveToNext();
        }
    }
}

但是要找到应用程序网络使用情况,我需要更多类似 WireShark

我认为该问题的最终解决方案很复杂,但欢迎提出任何建议。

【问题讨论】:

    标签: android wireshark network-protocols


    【解决方案1】:

    如您所说,如果您正在处理root 设备,您可以将监控应用程序设置为默认系统代理

    这样,通过充当transparent proxy,您将能够检测传入和传出连接。

    我从哪里开始?

    如果您想查看可能的实现,可以尝试使用ProxyDroid,它是开源的,绝对是一个很好的起点。

    你应该做什么

    您需要做的是触发一些iptables 命令以将您的应用程序设置为系统代理:here 您可以看到 ProxyDroid 是如何做到的。

    然后,您的应用程序将侦听连接请求,执行它们并相应地发送响应:同样,this 是一个非常基本的示例,说明了整个事情在您的应用程序方面如何工作。

    【讨论】:

    • 您能否为您的解决方案添加更多解释?
    • 我已经添加了一些关于你应该做什么的更多细节;)
    【解决方案2】:

    我的回答有点含糊,我提前道歉,但是您是否考虑过在设备上设置本地 vpn。这就是noroot firewall。这将允许您查看流入和流出设备的所有数据。唯一需要注意的是用户将无法使用任何其他 vpn(即他们无法使用 vpn 或使用 noroot 防火墙)

    【讨论】:

      【解决方案3】:

      你无法在非 root 设备上实现你想要的。

      (Play 商店中已经有一个 Wireshark 等效的应用程序,用于根设备,称为 Shark for root)。

      顺便说一句,您读取浏览器历史记录的代码只能从默认的 Android 浏览器获取历史记录。如果用户运行其他浏览器,例如 Firefox,那么它不会使用相同的数据库,因此它的历史不会出现在那里。

      【讨论】:

      • 我正在使用有根设备。而且我知道wireshark app,我想知道的是他们是如何知道捕获网络数据/使用情况的
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-10
      • 1970-01-01
      • 1970-01-01
      • 2011-10-31
      • 1970-01-01
      • 2015-02-17
      • 2014-03-19
      相关资源
      最近更新 更多