使用Reveal来查看别人的APP界面+白苹果不刷机解决方式
Reveal这个强大的界面调试工具。能够实时查看、改动view的属性,大体上实现了iOS程序猿梦寐以求的功能。比方,有时候我们加入了一个view,可是那个view死活不显示出来,这时候祭出Reveal,非常easy就能找到这个view,有可能它被遮挡起来了,有可能被我们不小心放到了superView的外面。等等,方便的非常。
非常早就知道Reveal能够用来查看其它app的界面,但一直没试过。今天为了抄别人的一个界面实现,用Reveal搞了一把。
准备条件:
- 已经越狱的iPhone;
- iPhone上安装了iFile。
- Mac上安装了Reveal。
- iPhone和Mac处在同一个局域网;
过程例如以下:
- 在iPhone上打开“iFile”软件,点击以下的地球图标:
此时iFile会在iPhone上使用Bonjour服务生成一个文件server:
这时候,我们在Mac浏览器里打开192.168.*.***,就能够查看iPhone上的文件系统。并上传文件到iPhone了。
打开Mac上的Reveal。并选择”Help”-“Show Reveal Library in Finder”。这时候有2个文件:Reveal.framework和libReveal.dylib。
将Reveal.framework压缩(不能上传文件夹)并上传到iPhone的”/System/Library/Frameworks/”文件夹中,然后解压缩;
在iFile里打开”应用程序”文件夹(iFile的内置书签),找到你想查看的APP文件夹里的info.plist文件。查找这个APP的Bundle ID,如果为com.example.domain。
在Mac上创建libReveal.plist,编辑内容为:
“`
{
Filter={
Bundles = “com.example.domain”;
}
}
上传libReveal.plist到”/Library/MobileSubstrate/DynamicLibraries”,也就是和libReveal.dylib在一起。最后一步。重新启动iPhone。然后打开想要查看的APP。Mac上的Reveal就有反应啦!
附:白苹果不刷机解决方式
我自己在编辑libReveal.plist的时候,是在iPhone上创建并编辑的。然而在编辑的过程中,iFile崩溃,整个系统不响应,甚至无法关机,于是仅仅能”电源键+Home键”重新启动,于是悲剧的白苹果了。
这时候。我们能够在重新启动的时候。在白苹果刚刚出现的时候,按住iPhone的音量添加键。iPhone就能够进入Safe Mode,能够正常重新启动了。
能够有机会将出问题的文件删掉。而不须要刷机了!
使用Reveal来查看别人的APP界面+白苹果不刷机解决方式的更多相关文章
- 如何利用Reveal神器查看各大APP UI搭建层级
作者 乔同X2016.08.22 19:45 写了3195字,被42人关注,获得了73个喜欢 如何利用Reveal神器查看各大APP UI搭建层级 字数413 阅读110 评论0 喜欢5 title: ...
- gitlab上fork别人的代码后更新的2种解决方式
1.解决方式1 首先要先确定一下是否建立了主repo的远程源: git remote -v如果里面只能看到你自己的两个源(fetch 和 push),那就需要添加主repo的源: git remote ...
- iOS使用Reveal分析他人app界面
本文转自http://blog.csdn.net/cuibo1123/article/details/45694657 安装: 首先前往 http://revealapp.com/download/ ...
- 关于APP界面布局设计的八种优缺点
学习UI设计的时候,经常要接触到页面的布局,布局的方式会直接影响一个APP的视觉效果,好的布局方式,往往能带来舒服的视觉效果,更能得到用户的接受与好评.然而万变不离其宗,移动端页面常用的布局,不外乎以 ...
- 菜鸟对APP界面设计的一些心得小结
1. 前言 当我看着我以前做的一些app界面,我意识到我应该把我的界面设计能力水平再提升一个,因为实在是丑啊!贴一些以前的设计: 现在看来,是不能看的了.我主要是做需求设计,后面也有一些美工的工作,我 ...
- 10个最新手机美食APP界面设计欣赏
移动软件时代,简单下载美食app,动动手指,滑动几下手机屏幕,即可足不出户,搜索,预定和购买各路美食.然而,对于作为手机app UI 界面设计师的你来说,最大的问题并不在于如何使用这些美食软件来方便生 ...
- Nuxt+Vue聊天室|nuxt仿微信App界面|nuxt.js聊天实例
一.项目简述 nuxt-chatroom 基于Nuxt.js+Vue.js+Vuex+Vant+VPopup等技术构建开发的仿微信|探探App界面社交聊天室项目.实现了卡片式翻牌滑动.消息发送/emo ...
- IOS与Android APP界面设计规范要点
IOS篇 一.尺寸及分辨率 iPhone界面尺寸:320*480.640*960.640*1136 iPhone6:4.7英寸(1334×750),iPhone6 Plus:5.5英寸(1920×10 ...
- 26款能够吸引用户的 iPhone App 界面设计
在这个移动互联网告诉的时代,众多的移动应用程序涌现出来.谁能抓住用户的注意力,谁就有可能成功.在下面这些移动 App 界面设计中,你可以看到不同创意类型的视觉效果,让你获得灵感. 您可能感兴趣的相关文 ...
随机推荐
- FTP上传文件服务器python实现
总结 使用Python的socket和socketserver模块实现ftp文件服务器.不是很难,但在粘包的问题上纠缠了不少时间.解决办法是发送文件信息之后等待一段时间. #!/usr/bin/pyt ...
- 51nod 1006 最长公共子序列Lcs 【LCS/打印path】
1006 最长公共子序列Lcs 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). ...
- dependencies与devDependencies的安装方法
npm install在安装node模块时,有两种命令参数可以把它们的信息写入package.json文件: –save –save-dev 但它的文档里1,只提到一个小区别,–save会把依赖包名称 ...
- Java---Static内存图详解
案例: 输出结果 内存图: 执行流程: java文件通过编译成class文件,class文件通过类加载器加载到方法区中,程序首先会加载核心类库,也就是你的程序想要运行所需要的一些最基本的类.接着程序会 ...
- fs寄存器相关,PEB,TEB
---恢复内容开始--- FS寄存器指向:偏移 说明000 指向SEH链指针004 线程堆栈顶部008 线程堆栈底部00C SubSystemTib010 FiberData014 Arbitrary ...
- [置顶]
python字典和nametuple互相转换例子
如果tuple中的元素很多的时候操作起来就比较麻烦,有可能会由于索引错误导致出错. namedtuple对象给tuple命名. 下面的例子可以字典和nametuple互相转换 aa={'verbosi ...
- JS请求报错:Unexpected token T in JSON at position 0
<?php /* 最近做一个ajax validate表单验证提交的代码,在ajax提交的时候 JS请求报错:Unexpected token T in JSON at position 0 描 ...
- 利用js实现table增加一行
简单的方法: 用jquery插件,比如设置该table的id为mytable <table id="mytable"> <tr> <td> 第一 ...
- Hadoop部署启动异常问题排查
hadoop的日志目录(/home/hadoop/app/hadoop-2.6.4/logs) 1.hadoop启动不正常用浏览器访问namenode的50070端口,不正常,需要诊断问题出在哪里: ...
- Android之——流量管理程序演示样例
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47680811 眼下.市面上有非常多管理手机流量的软件,能够让用户实时获取到自己手机 ...