Facebook Sonar

移动应用调试平台
授权协议 MIT
开发语言 Java C/C++ Objective-C JavaScript
所属分类 开发工具、 程序调试工具
软件类型 开源软件
地区 不详
投 递 者 柴丰
操作系统 Android
开源组织 Facebook
适用人群 未知
 软件概览

Sonar 是一个用于调试 iOS 和 Android 移动应用的平台,通过一个简单的界面,开发者可以可视化地审查和控制其 APP,除了可以直接使用,Sonar 还支持使用插件 API 进行扩展。

三年前 Facebook 已经开源过一款基于 Chrome 开发者工具的 Android 调试桥 Stetho,此次发布的 Sonar 比之更加先进,主要体现在跨平台更丰富的用户体验,以及最主要的可扩展性,官方建议开发者使用 Sonar 替代 Stetho。

Facebook 介绍,Sonar 已经被使用于内部许多项目中,其中的一些使用样例包括:

  • 通过显示 Litho 和 ComponentKit 组件,使工程师能够更精确地访问他们正在使用的功能的视图结构。

  • 处理 GraphQL 请求,而不是原始网络事件。

  • 实时跟踪性能指标,使开发人员能够更轻松地查找性能问题。

Sonar 由两部分组成:桌面客户端和移动 SDK。 Sonar 使用者与桌面客户端进行交互,而移动 SDK 则安装在工程师想要调试的 Android 或 iOS 应用程序中,之后将数据传输到 Sonar 桌面客户端。桌面客户端基于 Electron 和 Facebook 的开源项目,包括 React.js、Flow、Metro、RSocket 和 Yarn;移动 SDK 也大量使用 Facebook 的开源项目,如 Folly 和 RSocket。

  • 在之前的文章《Facebook Sonar——可扩展的App调试器》(现在已经改名为Flipper)提到了集成有问题,在两个月之后终于可以轻松集成了。 集成方式很简单,但是因为项目一直在变动,官方的文档可能还不太及时,这里大概列一下集成过程中需要注意的事项。 首先,Flipper最低支持到iOS 9.0,另外,依赖了OpenSSL、CocoaAsyncSocket这些项目中可能会用的库,需要注意一

  • https://gold.xitu.io/entry/5781e6872e958a0054c93368 作者: advancer_chen,原文链接: http://my.oschina.net/ChenTF/blog/708646 本篇详细的介绍了 Sonar 的接入流程, 国内外相关文章稀少, 难能可贵 —— 由  每个人丶都是自己的传奇 分享 所有文章目录:http://my.oschina

 相关资料
  • 有没有人愿意帮助我在使用android studio的kotlin multi-platform mobile(KMM)和javafx(gluon)进行iOS/android应用程序开发之间做出决定。 -运行时性能(启动时间、代码大小、功耗等)-KMM的学习曲线(我不知道Kotlin,但如果KMM的开发环境只是在windows上两个目标平台,我就学会了。[gluon中的android开发需要lin

  • 为了大学课程,我正在和一个朋友做一个游戏。一般的想法是,我们有一些平台从右向左移动,每次一个平台离开屏幕时,它都会在右侧随机的和位置生成(在一定范围内)。会有一个小精灵从一个平台跳到另一个平台。 我们遇到了一个不确定如何解决的问题。我们有所有正确的代码和一切,但平台就是不动。它们应该以每帧像素的恒定速度向左移动()。 然而,我们无法让它们移动;它们在屏幕上的位置是静态的,每个人最初被呼叫的位置。

  • 上一节我们介绍了如何对iOS设备越狱。 现在你已经完成了设备的越狱,那么下一步就是安装一些重要的命令行工具,例如 wget, ps, apt-get等用来审计iOS应用的工具。第一个要安装的就是OpenSSH。安装这个工具可以让你从mac登录进越狱设备。 (请注意,以下文字来自我之前翻译的文章,原作者是:Prateek Gianchandani) 进入Cydia,点击底部的搜索tab,然后搜索:O

  • 无论何时,您的Electron应用程序没有按照您设想的方式运行,一组调试工具也许可以帮助您找到代码的错误,性能瓶颈,或者优化的机会。 Application Debugging Whenever your Electron application is not behaving the way you wanted it to, an array of debugging tools might

  • 无论何时,您的Electron应用程序没有按照您设想的方式运行,一组调试工具也许可以帮助您找到代码的错误,性能瓶颈,或者优化的机会。 渲染进程 最广泛使用来调试指定渲染进程的工具是Chromium的开发者工具集。 它可以获取到所有的渲染进程,包括BrowserWindow的实例,BrowserView以及WebView。 您可以通过编程的方式在BrowserWindow的webContents中调

  • 我已经使用Google Identity Platform在我的react web应用程序上成功设置了SAML,当使用我在Okta(身份提供商)的测试帐户登录时,重定向工作正常。没有针对Google Identity Platform的mobile SAML设置的文档。是否有任何方法可以设置此设置或自定义重定向行为,以便重定向到移动URL方案?(例如,我的应用程序包id://saml登录)

  • 依照国际惯例,我们还将用Ionic 2继续创建hello,world。 hello,world 开始之前我们需要先安装Ionic的命令行工具,后面我们需要用这个工具来创建工程。 npm install -g ionic@beta 如果没有意外,我们将安装成功,然后可以使用ionic命令: 它自带了一系列的工具来加速我们的开发,这些工具可以在后面的章节中学习到。 Available tasks: (

  • 问题内容: 我创建了一个Java桌面应用程序(使用Swing),现在尝试通过使用JNLP从网络启动它使其工作。当我从终端启动应用程序时,它运行良好,但是一旦从JNLP启动它,它就不会关闭。我必须每次都手动终止该进程。 我读到如果将其用作默认关闭操作可能会出现问题,但事实并非如此。它使用(隐式)。另外,释放所有对象后,我将显式调用: 我猜想在关闭应用程序时可能会引发异常,但是我找不到从JNLP开始获