2023年12月14日发(作者:伍盼香)
MIUI是什么
篇一:MIUI_ROM制作教程
1.搭建移植环境
“工欲善其事,必先利其器”。在制作自己的ROM之前我们必须做好准备工作,搭建好移植环境。
1.1选择操作系统
1.2安装AndroidSDK
关于在Linu某,Window和Mac上详细的如何安装AndroidSDK的介绍请参照。(有人嚷,看不懂鸟语怎么办,首先我真诚的觉得做ROM移植还是懂点基本的鸟语好,第二我必须得承认不懂鸟语也是可以做ROM移植的。这种情况请大家去google搜索一下,网上有很多如何安装AndroidSDK的中文介绍。)
为了验证这一步是否成功,打开手机中的系统设置,选择应用程序—开发,确保选中“USB调试”,然后用USB线连接你的手机,在UbuntuShell或Window控制台下运行命令adbdevice,如果显示和下面的信息类似,恭喜你,adb可以识别你的手机了。
Litofdeviceattached
304D1955996BE28Edevice
注意:
(1)有可能会提示找不到adb,这个时候请确保将adb所在路径添加到系统的环境变量中。 (2)在Window下,必须安装手机相应的驱动才能成功识别手机。
(3)在Ubuntu下,有可能会提示“nouchpermiion”,这个时候有两种办法,第一种是以root的身份运行。第二种办法:
(3.1)运行lub命令,对于我的三星手机,输出如下:
Bu002Device001:ID1d6b:0002Linu某Foundation2.0roothub
Bu001Device098:ID04e8:685eSamungElectronicCo.,Ltd
。。。
找到手机对应的那一行,记录下04e8:685e,这个分别表示该设备的vendorId和productId。如果不确定手机对应的是哪一行,可以在连上手机前后运行lub,找到区别的那一行。(3.2)在/etc/udev/rule.d目录下新建一个文件。编辑如下:
SUBSYSTEMS=="ub",ATTRS{idVendor}="04e8",
MODE="0666",OWNER="你的登录身份"ATTRS{idProduct}="685e",
(3.3)重启ub服务,udoretartudev,重连手机。
adb在我们的移植过程中扮演非常重要的角色,它和接下来要介绍的apktool是移植工作中的双子星座,都是行走江湖必备利器。在以后的章节中我们会多次和它相遇。
1.3apktool和bakmali/mali
mali/bakmali:它们是Android下dalvik虚拟机的汇编/反汇编器。apktool实际上是基于mali/bakmali的封装,在下一节中我们会介绍它们的使用场合。地址: 2.熟悉移植的机型
“千里之行,始于足下”。做移植之前,首先得熟悉我们要移植的机型。
2.1逛论坛刷机
这个期间一定要掌握所在机型的刷机方法,需要用到什么工具,多刷几个ROM玩玩,尽量熟悉刷机过程。
2.2寻找合适的原厂ROM,确保root
什么是合适的原厂ROM呢,首先要版本合适,我们这个系列谈论的是基于原厂ROM移植MIUI,目前2.3的MIUI是基于android2.3.7源码开发的,从android2.3.3到android2.3.7这几个版本变化都不太大,因此2.3.3到2.3.7的原厂ROM版本都是合适的。4.0的MIUI在移植时我们也会给出MIUI基于哪一android4.0版本的源码开发的。
其次检查所安装的ROM是否有root权限。root权限分两种:
一种是手机root:这种root权限外在表现是你的手机上安装了一个授权管理软件,当你使用RE管理器的时候会弹出一个对话框询问是否授予root权限。
一种是内核root:这种是上一种root权限的超集。
判断上述哪种root权限的方法,在UbuntuShell或Window控制台下运行如下命令:adbroot(该命令的含义是以root权限运行adb)
adbremount(该命令的含义是将ytem分区的权限设成可读写) 如果这两条命令都成功,是内核root。运行adbhell,可以看到手机hell提示符为#。如果上述两条命令失败,运行adbhell可以看到手机hell提示符为$。如果此时运行u命令,手机弹出是否授予root权限,这说明手机上安装了授权管理程序。这种情况下运行u命令后,手机hell提示符也会变为#。
我们提供的一些工具是基于你的手机获取了内核root权限,如果是手机root,也是可以的,但是需要修改一下脚本。因为只是手机root,adbremount命令会失败。这个时候需要在手机hell里重新remountytem分区,并且修改ytem的目录权限,这样才能修改ytem分区的内容,而且需要修改我们提供的某些脚本。(之后不针对只有手机root权限做出特殊说明,我们相信你知道如何在这种模式下修改ytem分区)。
最后检查所选择的ROM可以进入Recovery模式刷机,不一定要求必需是CWMRecovery,有wipedata/cache和安装zip包等功能的简单Recovery就可以,当然有CWMRecovery更好。
2.3adblogcat
前面说过了adb是一个非常重要的命令,其中在机型适配过程中我们最常用的就是adblogcat。通过这个命令我们可以看到详细的log信息。
每一行的大致格式为:
I/ActivityManager(585):Startingactivity:Intent{action=...}
其中第一个字母表示信息优先级别(E表示错误,W表示警告,I表示普通信息等)。 斜杠后的ActivityManager表示信息标记tag,通常标记表示了打印出相应信息的模块或程序。可以通过adblogcattag:某某:S只显示相应tag打印的所有信息。
括号中的数字表示进程ID(pid),表示程序所在的进程ID。
冒号后的句子就是具体的信息说明了,当我们遇到错误的时候adblogcat会给出详细的错误信息,我们通过这些错误信息去定位错误。后续的章节会陆续提到。
在机型适配中常用adblogcat某:E来查看所有的错误信息。
详细的adb说明可以参考。在选定好ROM之后,我们要确保在开机之初,差不多是显示开机动画时adblogcat命令就能显示详细的log信息,如果adblogcat只是在桌面程序出现之后才打印信息或者根本不打印任何信息,移植工作很难进行下去。如果只是简单的修改一些图片资源的话可以,但是对于适配MIUI来说我们要求在适配机型一开始就确保adblogcat功能的正常运行。
某
当把我们要移植的机型刷好做过内核root,可以进入recovery模式刷机的原厂ROM后,第一件事就是需要做deode某。什么是deode某,啊,这真的是一个longlongtory。
话说Android发明之日起,准备让开发人员使用Java语言来在Android手机平台上进行应用程序开发(为什么用Java,Java程序员大喊道,谁用谁知道呀)。Java程序一般使用java编译器(javac命令)从源文件(.java结尾的文件)编译成类文件(.cla结尾的文件,又被称作字节码),一般很多类文件被打包成一个JAR包(JAR包实际是一个zip压缩包),然后用java虚拟机解释执行这些类文件。采用类文件格式以及使用标准的Java虚拟机需要向Java的所有者(当时是SUN公司,后来被Oracle公司收购,默哀一下)缴纳授权费用并遵守相应的版权协议。Google不想缴纳这笔费用并受协议的约束,于是这丫想出来一个“偷天换日,偷
梁换柱”的方法,用的是Java的壳,但是那颗心已不是Java的心。简单来说,就是当编译Android上的Java程序时,第一步还是编译成类文件打包成JAR包,然后会将这个JAR包转换为一个叫某的文件,这个de某文件是什么玩意呢,这是google发明出来的一个用于它自己的虚拟机上的一个字节码文件格式。Android上得这个虚拟机就叫做dalvik虚拟机(dalvik是冰岛的一个小镇的名字,当时google的工程师在给这个虚拟机苦思冥想一个名字,后来一个主要的工程师DanBrontein我的祖先当初生活在冰岛的这个小镇,就以它命名吧。据说Dan本人从没去过冰岛,Android发布后,冰岛很是骄傲,当地的报纸专门登载了这件事并热切欢迎Dan回乡探亲)。那么ode某是啥呢,它叫optimizedde某,即优化过的de某文件。
讲了这么多,你只需要理解ode某是一种优化过的de某文件就行了,至于怎么优化的不在我们讲述的范围内。ode某文件是互相依赖的,简单的理解就是我们改了其中一个文件,其它的ode某文件就不起作用了。为此,我们必须做一个deode某操作,就是将ode某文件变为de某文件。
一般来说原厂ROM发布时都是以ode某文件格式发布的,如何判断呢。运行如下命令:adbhelll/ytem/framework 如果看到很多以ode某结尾的文件,那么该ROM就是做个ode某的,大家可以用我们提供在附件中的脚本deode某.h来自动的做deode某操作。
该脚本首先确保你安装了mali/bakmali工具,然后从你的手机中pull出ytem分区下framework和app目录的内容,先把这些目录的内容备份在ode某.中。然后分别对这两个目录做deode某操作,最后把deode某后的文件puh到手机上。具体的大家参照脚本。
4.小结,案例分析
篇二:关于MIUI6的十个解读
MIUI6引发了手机行业甚至互联网巨头们的强烈关注。由于大量移动应用开始从系统端接入底层ROM,再加上MIUI年底将形成过亿的庞大用户群,雷军布局的“硬件+软件+互联网服务”一体化布局威力初显。
同时,MIUI也引发了一些争议,如有评论认为其越来越像Android,甚至称其将威胁国内初创企业的发展。那么MIUI6到底是什么?又会给智能终端、移动互联网、以及用户带来哪些变化?
MIUI掌门人洪锋近日与笔者展开了对话,就热点问题进行了逐个解读,以下为信息干货:1、MIUI月收入过亿元。在此之前,业内有数据预测MIUI用户单月APRU在5-6元,每年给小米可贡献60元左右的硬件以外收入。洪锋称:“这个数据有些偏高,MIUI用户整体约流水已超过1亿元”。而根据小米最新公布但数据,MIUI激活用户超过7000万,如果按照活跃用户在60-70%计算,MIUI用户单月APRU在2元左右,每年超过20元,即使如此也超过很多国产手机厂商在硬件方面的利润水平。 2、关于1.74亿开发者分成。小米2022年上半年向开发者分成1.74亿,而2022年12月单月分成超过1800万,不过小米上半年硬件用户新增了2611万台,MIUI用户更是新增了4000万。从数据上来看,随着上半年红米系列手机迅速放量、米3销量不畅,小米给开发者的分成效率是在降低的。
洪锋对此表示,小米上半年给开发者分成1.74亿元主要来自游戏,而在其他领域,如浏览器导航等,实际上是开发者反向给小米分成,这部分收入并没有计算在里面。洪锋认为,通过MIUI赚钱对于小米来说其实是个副产品,还没有精耕细作,主要目的还是在于生态建设,为开者赚更多等钱才是更靠谱的事情。
4、MIUI越来越重了么?随着越来越多的应用通过底层接入MIUI系统,外界很多评论认为MIUI已经越来越重,背离其“发烧”初衷。洪锋认为,MIUI和用户都在成长,系统功能的丰富和用户体验其实并没有太大关系,关键是产品做的是否够好。比如家里有10台汽车,你不会一次把它们全开出来,MIUI的功能也是一样,功能多但用户会有最佳适合的选择。
5、关于小米黄页。小米黄页是小米一站式生活服务的汇总,这一功能实际上在MIUIV5上就已经存在,基本上涵盖了目前互联网上流行的所有服务,一亮相就备受互联网巨头和应用初创企业的关注,被认为从硬件和系统端卡住了其他应用的“咽喉”。
务系统后,变成了一门大生意。不过洪锋认为,链接整个产业圈实际上还有一个成熟和提高的过程,并不是小米一家公司就能决定的事情。比如银行服务最先与招商银行合作,说因为其内部IT系统比较发达,小米黄页实际上就是两家IT系统的整合。未来通过MIUI,用户甚至可以看到餐厅哪张桌子是空的,远程直接下单点菜和支付;下一班公交车会什么时间到站;甚至在海底捞进行远程排队等。
6、MIUI如何选择应用接入?MIUI用户年底预计将突破1亿,因此先期占领系统层面入口,已经成为各大移动应用企业都在思考的问题,小米在应用分发层面的主导权全面升级。
那么小米如何考虑在系统端对应用的接入?洪锋认为,在应用体验、用户存量、合作顺畅、IT支撑、资本合作等方面会综合来考虑这个问题。但首要的问题有两个:一个是用户存量必须大,这是用户最终选择的结果;二是服务接入的稳定性,一些初创企业在MIUI接入第一天曾发生流量瞬间压垮对方服务器的案例。
7、MIUI6为何到年底才能完成多机型适配?MIUI6首批适配机型包括小米手机3和小米手机4的各个版本,而小米2S、小米2、红米和红米Note系列要等到2022年底才能够适配MIUI6,其它机型要更靠后,这也让用户等起来“很着急”。
洪锋对此回应称,具体原因主要有:MIUI6等系统难度和技术研发越来越复杂;小米机型越来越多;很多功能实际上MIUIV5版本也在同步演进;再就是小米目前等开发团队人手非常有限,任务已非常繁重。
洪锋进一步解释称:小米作为一家互联网企业,最关心用户数量,其中新版本等用户数量至关重要,因此会尽一切能力尽快覆盖所有的小米机型和老用户,这是MIUI团队工作的基本要求。如果说我们故意不去做,那我们不是有病么?
8、MIUI支付。随着小米大量建立围绕MIUI的生态系统,支付成为小米下一步要解决的急迫问题。目前小米用户支付主要通过米币、来自阿里巴巴的支付宝、大陆多家银行体系等,但对小米来说都不是最优选择。令外界关注的是,2022年12月小米正式成立支付公司,雷军任董事长,洪锋为业务具体负责人。
那么,小米未来如何整合支付体系?洪锋对此表示,与第三方牌照方合作、自主申请支付牌照、收购一家支付牌照方,这些方式小米都在考虑。小米目前就是一家电商,很多业务还没有牵扯到第三方,因此具体怎么做还要看未来的布局和变化,到了合适的时间点再去考虑最合适的方式。
9、MIUI与谷歌Android关系。业内分析认为,MIUI对于Android原生系统修改的过多过重,会在一定程度上触犯了谷歌Android基于Linu某研发、要求开放源代码的底线。另外,如果谷歌继续加强在Android统一界面的要求,MIUI未来也将面临不确定风险。
洪锋称,小米实际上在初期就与谷歌签订了长期合作协议,包括针对Android的防碎片协议,小米也将严格按照这一协议工作。MIUI的海外版本,也将全部通过谷歌的兼容性测试。实际上,谷歌最关心对不是UI层面长什么样子,而是考虑到整个谷歌生态圈的兼容性和对应用的稳定性。
小米开发团队很多成员都来自谷歌,包括前谷歌主管Android产品副总裁HugoBarra,对谷歌非常了解。洪锋强调称,MIUI对Android系统的内核主要是优化,并没有任何裁剪。10、最关心的手机技术。洪锋回答,自己最关心的是脑电波芯片技术,因为手机的未来是屏幕想要多大就有多大,希望它在哪里它就随时出现,因此手机未来的形态会发生巨大的变化,最终和人体演进在一起。洪锋笑称,科技发展一直都在超出人类预期,我们这一代人应该可以看到这一天。
洪锋印象: 说到洪锋,用雷军的原话就是:“你接触他你会压力很大,他没有表情,他随便你说,你不知道他怎么想的。但他是一个很绝顶聪明的人。”
说到洪锋,很多人其实已经淡忘了在加入小米之前,它来自谷歌,并开发出谷歌街景的初创版本。
当问及洪锋现在最怕什么,洪锋咧嘴一乐:“我最怕MIUI团队人手不够用”。那如果问笔者面对洪锋最怕什么,那就是他不时而来又及其犀利的反问:“是你的话该怎么办?”
篇三:从小米手机MIUI开发模式我们能学到什么
参加《商业价值》杂志移动互联网创新大会有感
——从小米手机MIUI开发模式我们能学到什么?
今年7月6日,作为《商业价值》的忠实读者,参加了由《商业价值》杂志社举办的“移动互联网创新大会”,其中一项内容是小米科技MIUI产品经理许斐介绍的“MIUI——快速迭代的互联网开发模式”,听取后有了不小的收获体会,现整理如下,与大家分享。
一、什么是MIUI?
提起小米手机,相信许多人都耳熟能详,目前已经牢牢占据了国内Android手机出货量第一的宝座,小米公司的估值已达到40亿美金。MIUI,就是小米手机中搭载的操作系统,基于Android2.3和4.0深度定制,兼容所有Android应用。当然MIUI不止支持小米手机,还支持目前市面流行的30多款手机。 在全世界,MIUI有超过150万发烧友使用(注意这里仅指发烧友的数量,普通用户数量未计入),同时测试并参与每周改进。MIUI的设计理念就是——为发烧而生。
二、MIUI开发模式
MIUI团队与发烧友沟通的最直接渠道就是MIUI论坛,在这里倾听用户的声音,反馈给用户答案,发布新功能开发方向投票,发布最新版本的ROM。MIUI论坛的注册用户已达到165万。
定期发布的MIUIROM包括以下两种:
开发版,体验最新的MIUI改进,每周五在线升级。
稳定版,经全球发烧友测试稳定后发布,每月升级。
每周升级,改正存在的问题,固化用户认可的,这就是MIUI快速迭代的互联网开发模式,那么,MIUI团队是如何支撑起如此高频率、高强度的迭代呢?许斐总结了三条“秘笈”:正确的方向、正确的方式、正确的节奏。
(一)正确的方向
正确的方向之——聆听用户的声音。
MIUI团队通过论坛即时听取用户的各种反馈,并做到有问必答。同时,会定期举办较大规模的与发烧友面对面的线下交流活动,进行深度交流。
正确的方向之——相信用户的直觉。 用户的直觉是,不通过一步步分析思考而直接获得的整体认知,以及因此得出的设想和判断,特点是快速、直接、跳跃。有时候用户会直接提出好的点子、创新的功能,甚至是某一问题的解决方案,有时候用户会也仅仅是提出使用中的不便之处、或未被满足的需求。
MIUI团队做到了相信用户的直觉,发掘用户直觉背后所蕴藏的需求,进而发现产品改进的方法。也正是由于MIUI团队没有忽视任何一条用户反馈,一项又一项创新的、经反复测试的、完善的功能或体验才随着每周的迭代更新不断发送给用户。
正确的方向之——尊重用户的选择。
MIUI团队在新功能的构思阶段,就会在论坛发帖征询用户的意见,对反对声音高的功能会中止立项;对同一功能出现两个或更多实现方式,会在论坛发起投票,由用户做出最终选择。
MIUI团队每周还会定期发布用户体验报告,及时总结产品不足和改进方向。同时MIUI论坛也做到了畅所欲言、有问必答,充分尊重每一位用户。
(二)正确的方式
所谓的正确的方式,就是通过论坛,让165万注册用户都参与到MIUI的开发中来。
论坛进行了区块划分,MIUI团队所有成员每天都被要求按分工泡在论坛的相应板块,收集用户反馈、意见、建议,同时承担问题解答的任务,通过这种方式确保沟通的高效。 论坛还设置了荣誉开发组,组员均为从狂热发烧友中选拔出来的精英,百人规模,负责面向初学者进行答疑解惑,同时也承担着每日更新后的bug捕捉任务。
论坛通过不断完善高效的沟通流程,扩大用户的投入程度,实现165万人共同维护。
许斐还重点介绍了开发中一个高效率的查找问题的方法——试错。基于论坛庞大的发烧友用户基础,MIUI团队将开发完成的功能甚或是半成品,交给一小部分核心用户进行试用,在实际使用中快速发现差错、短缺等,完善后再发交更大范围的用户进行大规模的试错,继续发现错误。如此试错,成本极低,而效率却很高。
(三)正确的节奏
MIUI每个周五的固定时间发布最新的ROM,并一直坚持了下来。这个人为设置的时间点无疑是MIUI团队肩上的压力,但也正因这份压力,促使一切开发工作不得不具备高度精确的计划和清晰明确的阶段目标,同时要求执行层面必须把握好节奏,实现顺序井然、运转高效。
MIUI既然定位于为发烧而生,就必须保证用户对产品的“黏合度”,团队及时回答用户的疑问、产品及时满足用户需求,对时效性的要求极高。MIUI团队正是通过每周五的定时更新,及时抛却不正确的东西,改进已发现的问题,并固化用户认可的东西,实现了获取反馈后的快速迭代。
团队的节奏获得用户的认可,团队的成果与用户的预期同步,如此,牢牢抓住用户的注意力便顺理成章。
三、我们能学到什么?
(一)需求分析要触碰用户需求的深层本质 MIUI团队制定的“正确的方向”,本质上即是我们日常工作中也经常谈到的“以用户需求为导向”,看似并非什么新颖的理念,但能实实在在做到,殊为不易。
需求分析,是我们服务工作中的一个重要程序,同时也应该把它看作一个广义的概念,整个服务工作的全部流程运转过程中,都可能随时出现用户的需求,当然这需求可能是显性的,也可能是隐形的。
无论是用户直接提出的需求,还是我们自身对用户需求的理解,都是基于双方对用户本身业务和对于我们信息服务能提供的服务内容的认识,认识是需要一
个过程的,而且这个过程很可能是持续的、反复的,并且不断深入和提高的。
MIUI团队收集用户的显性需求,基于这些显性开发出产品,把产品迅速交与用户进行测试并听取用户的反馈;对于用户反馈的问题不仅仅是当作纯粹的产品问题看待,而是探索问题的背后所包含的隐性需求,以拿出更加完善的解决方案;对于某些用户直接反馈的产品功能解决方案,说明这些用户也对产品有了更深的认识,MIUI会找出这类方案背后存在的真正问题,并加以解决。接下来,改进产品后再发布,再次与用户结合,如此反复,最终磨合成为一个经历了双方干系人通过层层深入地认识而最终认可的产品。
用户本质需求,可能隐藏在服务或产品的一个错误中,可能隐藏在闲聊时用户对自身业务繁琐流程的一次抱怨中,可能隐藏在用户按部就班运转流程中一闪而过的灵感,也可能隐藏在项目组成员的一次头脑风暴会议之中。如何发现隐性需求、如何发现显性需求背后隐藏的东西,不能靠等待、更不能靠运气,正如前文所述,还是靠对服务(项目、产品)整体的认识和再认识,这一过程不但自己要做到,更要发动用户一起去做。基本做法还是几个俗套的词汇:积极,用心,代入,坚持。积极,就是主动性,有意识发现和思考需求;用心,就是关注细节,关注服务每一个环节、关注用户业务每一个流程、关注每一个问题、关注每一个建议;代入,就是换位思考,站在用户立场去体会服务的出发点,深入感知用户业务,找到业务与信息服务的结合点;坚持,本质是考验我们的责任心,保障全程凝神聚力,认识的过程是反复的、持续的,要做好,唯有坚持。
(二)保持正确的心态
专业心态,相信IT人的都经常听到这个说法,具体含义无需深入讨论。这里要讲的是,保持专业心态没错,但过度了,可能会变成阻挡我们发现真相的绊脚石。
正是因为专业,所以难免在与用户沟通中会发生“想当然”。比如:用户提出一个设想,而我们通过迅速的“专业化”思考,运用IT知识进行评估分析后,可能会马上得出无法实现、没有价值等结论。但被忽略的是,正是因为所谓“专业”的思考,反而局限了我们思考的范围,一切想法都脱离不了“专业”圈子也就是IT知识领域,简言之就是“想当然”,甚至可以不太确切地称之犯了“本本主义”错误。
这种“想当然”,打乱了团队成员与用户的沟通,用户思想火花可能瞬间就被对话中隐约能听出来的“你不懂IT”所浇灭,更加可怕的是用户对团队成员的态度产生不满情绪,这对于整个服务过程都是非常严重的不良影响。
专业心态本身没错,能赋予我们旺盛的活力,保持在行业中持续前进的动力。但服务过程中的思维方式因此产生较强的局限性的话,不仅危害服务本身,也阻挡了我们创新的脚步。 MIUI团队是怎么做的?用户在论坛上畅所欲言,MIUI团队要求所有成员必须每天都泡在论坛上,并按板块划分“责任田”,对用户做到有问必答,充分尊重每一位用户。这种尊重也换来了用户的认可,一切问题、建议、牢骚都发到论坛上,MIUI团队正是凭借着对这些问题、建议、牢骚的钻研,发现闪光点,获取有价值的点子。
MIUI是手机操作系统产品,高度关注的是用户体验;做IT服务的,高度关注的是服务如何对用户业务产生价值。服务必须贴近用户业务,专业之外,关心用户业务也是需要我们做到的。当然不是说时时刻刻都要去关注用户业务,可以在服务过程中去逐步了解。我是这么认为的,用户不懂IT技术,是说的过去的;而服务时对涉及的用户业务完全不知道甚至不主动去了解的话,是说不过去的。尤其是按照业务需求开发信息系统时,更应该把用户当作老师,扎扎实实进行学习。
(三)其他
除了以上两点,还有一些其他的感受。如:
循环制定短期小规模目标,并确保按期完成,是把握项目节奏的好方法;选择正确的沟通渠道并保证沟通渠道的有效性,以确保团队每个人获得的信息同步,是增加团队成员投入度、规避无价值行动、提高团队协作效率的好方法。
2023年12月14日发(作者:伍盼香)
MIUI是什么
篇一:MIUI_ROM制作教程
1.搭建移植环境
“工欲善其事,必先利其器”。在制作自己的ROM之前我们必须做好准备工作,搭建好移植环境。
1.1选择操作系统
1.2安装AndroidSDK
关于在Linu某,Window和Mac上详细的如何安装AndroidSDK的介绍请参照。(有人嚷,看不懂鸟语怎么办,首先我真诚的觉得做ROM移植还是懂点基本的鸟语好,第二我必须得承认不懂鸟语也是可以做ROM移植的。这种情况请大家去google搜索一下,网上有很多如何安装AndroidSDK的中文介绍。)
为了验证这一步是否成功,打开手机中的系统设置,选择应用程序—开发,确保选中“USB调试”,然后用USB线连接你的手机,在UbuntuShell或Window控制台下运行命令adbdevice,如果显示和下面的信息类似,恭喜你,adb可以识别你的手机了。
Litofdeviceattached
304D1955996BE28Edevice
注意:
(1)有可能会提示找不到adb,这个时候请确保将adb所在路径添加到系统的环境变量中。 (2)在Window下,必须安装手机相应的驱动才能成功识别手机。
(3)在Ubuntu下,有可能会提示“nouchpermiion”,这个时候有两种办法,第一种是以root的身份运行。第二种办法:
(3.1)运行lub命令,对于我的三星手机,输出如下:
Bu002Device001:ID1d6b:0002Linu某Foundation2.0roothub
Bu001Device098:ID04e8:685eSamungElectronicCo.,Ltd
。。。
找到手机对应的那一行,记录下04e8:685e,这个分别表示该设备的vendorId和productId。如果不确定手机对应的是哪一行,可以在连上手机前后运行lub,找到区别的那一行。(3.2)在/etc/udev/rule.d目录下新建一个文件。编辑如下:
SUBSYSTEMS=="ub",ATTRS{idVendor}="04e8",
MODE="0666",OWNER="你的登录身份"ATTRS{idProduct}="685e",
(3.3)重启ub服务,udoretartudev,重连手机。
adb在我们的移植过程中扮演非常重要的角色,它和接下来要介绍的apktool是移植工作中的双子星座,都是行走江湖必备利器。在以后的章节中我们会多次和它相遇。
1.3apktool和bakmali/mali
mali/bakmali:它们是Android下dalvik虚拟机的汇编/反汇编器。apktool实际上是基于mali/bakmali的封装,在下一节中我们会介绍它们的使用场合。地址: 2.熟悉移植的机型
“千里之行,始于足下”。做移植之前,首先得熟悉我们要移植的机型。
2.1逛论坛刷机
这个期间一定要掌握所在机型的刷机方法,需要用到什么工具,多刷几个ROM玩玩,尽量熟悉刷机过程。
2.2寻找合适的原厂ROM,确保root
什么是合适的原厂ROM呢,首先要版本合适,我们这个系列谈论的是基于原厂ROM移植MIUI,目前2.3的MIUI是基于android2.3.7源码开发的,从android2.3.3到android2.3.7这几个版本变化都不太大,因此2.3.3到2.3.7的原厂ROM版本都是合适的。4.0的MIUI在移植时我们也会给出MIUI基于哪一android4.0版本的源码开发的。
其次检查所安装的ROM是否有root权限。root权限分两种:
一种是手机root:这种root权限外在表现是你的手机上安装了一个授权管理软件,当你使用RE管理器的时候会弹出一个对话框询问是否授予root权限。
一种是内核root:这种是上一种root权限的超集。
判断上述哪种root权限的方法,在UbuntuShell或Window控制台下运行如下命令:adbroot(该命令的含义是以root权限运行adb)
adbremount(该命令的含义是将ytem分区的权限设成可读写) 如果这两条命令都成功,是内核root。运行adbhell,可以看到手机hell提示符为#。如果上述两条命令失败,运行adbhell可以看到手机hell提示符为$。如果此时运行u命令,手机弹出是否授予root权限,这说明手机上安装了授权管理程序。这种情况下运行u命令后,手机hell提示符也会变为#。
我们提供的一些工具是基于你的手机获取了内核root权限,如果是手机root,也是可以的,但是需要修改一下脚本。因为只是手机root,adbremount命令会失败。这个时候需要在手机hell里重新remountytem分区,并且修改ytem的目录权限,这样才能修改ytem分区的内容,而且需要修改我们提供的某些脚本。(之后不针对只有手机root权限做出特殊说明,我们相信你知道如何在这种模式下修改ytem分区)。
最后检查所选择的ROM可以进入Recovery模式刷机,不一定要求必需是CWMRecovery,有wipedata/cache和安装zip包等功能的简单Recovery就可以,当然有CWMRecovery更好。
2.3adblogcat
前面说过了adb是一个非常重要的命令,其中在机型适配过程中我们最常用的就是adblogcat。通过这个命令我们可以看到详细的log信息。
每一行的大致格式为:
I/ActivityManager(585):Startingactivity:Intent{action=...}
其中第一个字母表示信息优先级别(E表示错误,W表示警告,I表示普通信息等)。 斜杠后的ActivityManager表示信息标记tag,通常标记表示了打印出相应信息的模块或程序。可以通过adblogcattag:某某:S只显示相应tag打印的所有信息。
括号中的数字表示进程ID(pid),表示程序所在的进程ID。
冒号后的句子就是具体的信息说明了,当我们遇到错误的时候adblogcat会给出详细的错误信息,我们通过这些错误信息去定位错误。后续的章节会陆续提到。
在机型适配中常用adblogcat某:E来查看所有的错误信息。
详细的adb说明可以参考。在选定好ROM之后,我们要确保在开机之初,差不多是显示开机动画时adblogcat命令就能显示详细的log信息,如果adblogcat只是在桌面程序出现之后才打印信息或者根本不打印任何信息,移植工作很难进行下去。如果只是简单的修改一些图片资源的话可以,但是对于适配MIUI来说我们要求在适配机型一开始就确保adblogcat功能的正常运行。
某
当把我们要移植的机型刷好做过内核root,可以进入recovery模式刷机的原厂ROM后,第一件事就是需要做deode某。什么是deode某,啊,这真的是一个longlongtory。
话说Android发明之日起,准备让开发人员使用Java语言来在Android手机平台上进行应用程序开发(为什么用Java,Java程序员大喊道,谁用谁知道呀)。Java程序一般使用java编译器(javac命令)从源文件(.java结尾的文件)编译成类文件(.cla结尾的文件,又被称作字节码),一般很多类文件被打包成一个JAR包(JAR包实际是一个zip压缩包),然后用java虚拟机解释执行这些类文件。采用类文件格式以及使用标准的Java虚拟机需要向Java的所有者(当时是SUN公司,后来被Oracle公司收购,默哀一下)缴纳授权费用并遵守相应的版权协议。Google不想缴纳这笔费用并受协议的约束,于是这丫想出来一个“偷天换日,偷
梁换柱”的方法,用的是Java的壳,但是那颗心已不是Java的心。简单来说,就是当编译Android上的Java程序时,第一步还是编译成类文件打包成JAR包,然后会将这个JAR包转换为一个叫某的文件,这个de某文件是什么玩意呢,这是google发明出来的一个用于它自己的虚拟机上的一个字节码文件格式。Android上得这个虚拟机就叫做dalvik虚拟机(dalvik是冰岛的一个小镇的名字,当时google的工程师在给这个虚拟机苦思冥想一个名字,后来一个主要的工程师DanBrontein我的祖先当初生活在冰岛的这个小镇,就以它命名吧。据说Dan本人从没去过冰岛,Android发布后,冰岛很是骄傲,当地的报纸专门登载了这件事并热切欢迎Dan回乡探亲)。那么ode某是啥呢,它叫optimizedde某,即优化过的de某文件。
讲了这么多,你只需要理解ode某是一种优化过的de某文件就行了,至于怎么优化的不在我们讲述的范围内。ode某文件是互相依赖的,简单的理解就是我们改了其中一个文件,其它的ode某文件就不起作用了。为此,我们必须做一个deode某操作,就是将ode某文件变为de某文件。
一般来说原厂ROM发布时都是以ode某文件格式发布的,如何判断呢。运行如下命令:adbhelll/ytem/framework 如果看到很多以ode某结尾的文件,那么该ROM就是做个ode某的,大家可以用我们提供在附件中的脚本deode某.h来自动的做deode某操作。
该脚本首先确保你安装了mali/bakmali工具,然后从你的手机中pull出ytem分区下framework和app目录的内容,先把这些目录的内容备份在ode某.中。然后分别对这两个目录做deode某操作,最后把deode某后的文件puh到手机上。具体的大家参照脚本。
4.小结,案例分析
篇二:关于MIUI6的十个解读
MIUI6引发了手机行业甚至互联网巨头们的强烈关注。由于大量移动应用开始从系统端接入底层ROM,再加上MIUI年底将形成过亿的庞大用户群,雷军布局的“硬件+软件+互联网服务”一体化布局威力初显。
同时,MIUI也引发了一些争议,如有评论认为其越来越像Android,甚至称其将威胁国内初创企业的发展。那么MIUI6到底是什么?又会给智能终端、移动互联网、以及用户带来哪些变化?
MIUI掌门人洪锋近日与笔者展开了对话,就热点问题进行了逐个解读,以下为信息干货:1、MIUI月收入过亿元。在此之前,业内有数据预测MIUI用户单月APRU在5-6元,每年给小米可贡献60元左右的硬件以外收入。洪锋称:“这个数据有些偏高,MIUI用户整体约流水已超过1亿元”。而根据小米最新公布但数据,MIUI激活用户超过7000万,如果按照活跃用户在60-70%计算,MIUI用户单月APRU在2元左右,每年超过20元,即使如此也超过很多国产手机厂商在硬件方面的利润水平。 2、关于1.74亿开发者分成。小米2022年上半年向开发者分成1.74亿,而2022年12月单月分成超过1800万,不过小米上半年硬件用户新增了2611万台,MIUI用户更是新增了4000万。从数据上来看,随着上半年红米系列手机迅速放量、米3销量不畅,小米给开发者的分成效率是在降低的。
洪锋对此表示,小米上半年给开发者分成1.74亿元主要来自游戏,而在其他领域,如浏览器导航等,实际上是开发者反向给小米分成,这部分收入并没有计算在里面。洪锋认为,通过MIUI赚钱对于小米来说其实是个副产品,还没有精耕细作,主要目的还是在于生态建设,为开者赚更多等钱才是更靠谱的事情。
4、MIUI越来越重了么?随着越来越多的应用通过底层接入MIUI系统,外界很多评论认为MIUI已经越来越重,背离其“发烧”初衷。洪锋认为,MIUI和用户都在成长,系统功能的丰富和用户体验其实并没有太大关系,关键是产品做的是否够好。比如家里有10台汽车,你不会一次把它们全开出来,MIUI的功能也是一样,功能多但用户会有最佳适合的选择。
5、关于小米黄页。小米黄页是小米一站式生活服务的汇总,这一功能实际上在MIUIV5上就已经存在,基本上涵盖了目前互联网上流行的所有服务,一亮相就备受互联网巨头和应用初创企业的关注,被认为从硬件和系统端卡住了其他应用的“咽喉”。
务系统后,变成了一门大生意。不过洪锋认为,链接整个产业圈实际上还有一个成熟和提高的过程,并不是小米一家公司就能决定的事情。比如银行服务最先与招商银行合作,说因为其内部IT系统比较发达,小米黄页实际上就是两家IT系统的整合。未来通过MIUI,用户甚至可以看到餐厅哪张桌子是空的,远程直接下单点菜和支付;下一班公交车会什么时间到站;甚至在海底捞进行远程排队等。
6、MIUI如何选择应用接入?MIUI用户年底预计将突破1亿,因此先期占领系统层面入口,已经成为各大移动应用企业都在思考的问题,小米在应用分发层面的主导权全面升级。
那么小米如何考虑在系统端对应用的接入?洪锋认为,在应用体验、用户存量、合作顺畅、IT支撑、资本合作等方面会综合来考虑这个问题。但首要的问题有两个:一个是用户存量必须大,这是用户最终选择的结果;二是服务接入的稳定性,一些初创企业在MIUI接入第一天曾发生流量瞬间压垮对方服务器的案例。
7、MIUI6为何到年底才能完成多机型适配?MIUI6首批适配机型包括小米手机3和小米手机4的各个版本,而小米2S、小米2、红米和红米Note系列要等到2022年底才能够适配MIUI6,其它机型要更靠后,这也让用户等起来“很着急”。
洪锋对此回应称,具体原因主要有:MIUI6等系统难度和技术研发越来越复杂;小米机型越来越多;很多功能实际上MIUIV5版本也在同步演进;再就是小米目前等开发团队人手非常有限,任务已非常繁重。
洪锋进一步解释称:小米作为一家互联网企业,最关心用户数量,其中新版本等用户数量至关重要,因此会尽一切能力尽快覆盖所有的小米机型和老用户,这是MIUI团队工作的基本要求。如果说我们故意不去做,那我们不是有病么?
8、MIUI支付。随着小米大量建立围绕MIUI的生态系统,支付成为小米下一步要解决的急迫问题。目前小米用户支付主要通过米币、来自阿里巴巴的支付宝、大陆多家银行体系等,但对小米来说都不是最优选择。令外界关注的是,2022年12月小米正式成立支付公司,雷军任董事长,洪锋为业务具体负责人。
那么,小米未来如何整合支付体系?洪锋对此表示,与第三方牌照方合作、自主申请支付牌照、收购一家支付牌照方,这些方式小米都在考虑。小米目前就是一家电商,很多业务还没有牵扯到第三方,因此具体怎么做还要看未来的布局和变化,到了合适的时间点再去考虑最合适的方式。
9、MIUI与谷歌Android关系。业内分析认为,MIUI对于Android原生系统修改的过多过重,会在一定程度上触犯了谷歌Android基于Linu某研发、要求开放源代码的底线。另外,如果谷歌继续加强在Android统一界面的要求,MIUI未来也将面临不确定风险。
洪锋称,小米实际上在初期就与谷歌签订了长期合作协议,包括针对Android的防碎片协议,小米也将严格按照这一协议工作。MIUI的海外版本,也将全部通过谷歌的兼容性测试。实际上,谷歌最关心对不是UI层面长什么样子,而是考虑到整个谷歌生态圈的兼容性和对应用的稳定性。
小米开发团队很多成员都来自谷歌,包括前谷歌主管Android产品副总裁HugoBarra,对谷歌非常了解。洪锋强调称,MIUI对Android系统的内核主要是优化,并没有任何裁剪。10、最关心的手机技术。洪锋回答,自己最关心的是脑电波芯片技术,因为手机的未来是屏幕想要多大就有多大,希望它在哪里它就随时出现,因此手机未来的形态会发生巨大的变化,最终和人体演进在一起。洪锋笑称,科技发展一直都在超出人类预期,我们这一代人应该可以看到这一天。
洪锋印象: 说到洪锋,用雷军的原话就是:“你接触他你会压力很大,他没有表情,他随便你说,你不知道他怎么想的。但他是一个很绝顶聪明的人。”
说到洪锋,很多人其实已经淡忘了在加入小米之前,它来自谷歌,并开发出谷歌街景的初创版本。
当问及洪锋现在最怕什么,洪锋咧嘴一乐:“我最怕MIUI团队人手不够用”。那如果问笔者面对洪锋最怕什么,那就是他不时而来又及其犀利的反问:“是你的话该怎么办?”
篇三:从小米手机MIUI开发模式我们能学到什么
参加《商业价值》杂志移动互联网创新大会有感
——从小米手机MIUI开发模式我们能学到什么?
今年7月6日,作为《商业价值》的忠实读者,参加了由《商业价值》杂志社举办的“移动互联网创新大会”,其中一项内容是小米科技MIUI产品经理许斐介绍的“MIUI——快速迭代的互联网开发模式”,听取后有了不小的收获体会,现整理如下,与大家分享。
一、什么是MIUI?
提起小米手机,相信许多人都耳熟能详,目前已经牢牢占据了国内Android手机出货量第一的宝座,小米公司的估值已达到40亿美金。MIUI,就是小米手机中搭载的操作系统,基于Android2.3和4.0深度定制,兼容所有Android应用。当然MIUI不止支持小米手机,还支持目前市面流行的30多款手机。 在全世界,MIUI有超过150万发烧友使用(注意这里仅指发烧友的数量,普通用户数量未计入),同时测试并参与每周改进。MIUI的设计理念就是——为发烧而生。
二、MIUI开发模式
MIUI团队与发烧友沟通的最直接渠道就是MIUI论坛,在这里倾听用户的声音,反馈给用户答案,发布新功能开发方向投票,发布最新版本的ROM。MIUI论坛的注册用户已达到165万。
定期发布的MIUIROM包括以下两种:
开发版,体验最新的MIUI改进,每周五在线升级。
稳定版,经全球发烧友测试稳定后发布,每月升级。
每周升级,改正存在的问题,固化用户认可的,这就是MIUI快速迭代的互联网开发模式,那么,MIUI团队是如何支撑起如此高频率、高强度的迭代呢?许斐总结了三条“秘笈”:正确的方向、正确的方式、正确的节奏。
(一)正确的方向
正确的方向之——聆听用户的声音。
MIUI团队通过论坛即时听取用户的各种反馈,并做到有问必答。同时,会定期举办较大规模的与发烧友面对面的线下交流活动,进行深度交流。
正确的方向之——相信用户的直觉。 用户的直觉是,不通过一步步分析思考而直接获得的整体认知,以及因此得出的设想和判断,特点是快速、直接、跳跃。有时候用户会直接提出好的点子、创新的功能,甚至是某一问题的解决方案,有时候用户会也仅仅是提出使用中的不便之处、或未被满足的需求。
MIUI团队做到了相信用户的直觉,发掘用户直觉背后所蕴藏的需求,进而发现产品改进的方法。也正是由于MIUI团队没有忽视任何一条用户反馈,一项又一项创新的、经反复测试的、完善的功能或体验才随着每周的迭代更新不断发送给用户。
正确的方向之——尊重用户的选择。
MIUI团队在新功能的构思阶段,就会在论坛发帖征询用户的意见,对反对声音高的功能会中止立项;对同一功能出现两个或更多实现方式,会在论坛发起投票,由用户做出最终选择。
MIUI团队每周还会定期发布用户体验报告,及时总结产品不足和改进方向。同时MIUI论坛也做到了畅所欲言、有问必答,充分尊重每一位用户。
(二)正确的方式
所谓的正确的方式,就是通过论坛,让165万注册用户都参与到MIUI的开发中来。
论坛进行了区块划分,MIUI团队所有成员每天都被要求按分工泡在论坛的相应板块,收集用户反馈、意见、建议,同时承担问题解答的任务,通过这种方式确保沟通的高效。 论坛还设置了荣誉开发组,组员均为从狂热发烧友中选拔出来的精英,百人规模,负责面向初学者进行答疑解惑,同时也承担着每日更新后的bug捕捉任务。
论坛通过不断完善高效的沟通流程,扩大用户的投入程度,实现165万人共同维护。
许斐还重点介绍了开发中一个高效率的查找问题的方法——试错。基于论坛庞大的发烧友用户基础,MIUI团队将开发完成的功能甚或是半成品,交给一小部分核心用户进行试用,在实际使用中快速发现差错、短缺等,完善后再发交更大范围的用户进行大规模的试错,继续发现错误。如此试错,成本极低,而效率却很高。
(三)正确的节奏
MIUI每个周五的固定时间发布最新的ROM,并一直坚持了下来。这个人为设置的时间点无疑是MIUI团队肩上的压力,但也正因这份压力,促使一切开发工作不得不具备高度精确的计划和清晰明确的阶段目标,同时要求执行层面必须把握好节奏,实现顺序井然、运转高效。
MIUI既然定位于为发烧而生,就必须保证用户对产品的“黏合度”,团队及时回答用户的疑问、产品及时满足用户需求,对时效性的要求极高。MIUI团队正是通过每周五的定时更新,及时抛却不正确的东西,改进已发现的问题,并固化用户认可的东西,实现了获取反馈后的快速迭代。
团队的节奏获得用户的认可,团队的成果与用户的预期同步,如此,牢牢抓住用户的注意力便顺理成章。
三、我们能学到什么?
(一)需求分析要触碰用户需求的深层本质 MIUI团队制定的“正确的方向”,本质上即是我们日常工作中也经常谈到的“以用户需求为导向”,看似并非什么新颖的理念,但能实实在在做到,殊为不易。
需求分析,是我们服务工作中的一个重要程序,同时也应该把它看作一个广义的概念,整个服务工作的全部流程运转过程中,都可能随时出现用户的需求,当然这需求可能是显性的,也可能是隐形的。
无论是用户直接提出的需求,还是我们自身对用户需求的理解,都是基于双方对用户本身业务和对于我们信息服务能提供的服务内容的认识,认识是需要一
个过程的,而且这个过程很可能是持续的、反复的,并且不断深入和提高的。
MIUI团队收集用户的显性需求,基于这些显性开发出产品,把产品迅速交与用户进行测试并听取用户的反馈;对于用户反馈的问题不仅仅是当作纯粹的产品问题看待,而是探索问题的背后所包含的隐性需求,以拿出更加完善的解决方案;对于某些用户直接反馈的产品功能解决方案,说明这些用户也对产品有了更深的认识,MIUI会找出这类方案背后存在的真正问题,并加以解决。接下来,改进产品后再发布,再次与用户结合,如此反复,最终磨合成为一个经历了双方干系人通过层层深入地认识而最终认可的产品。
用户本质需求,可能隐藏在服务或产品的一个错误中,可能隐藏在闲聊时用户对自身业务繁琐流程的一次抱怨中,可能隐藏在用户按部就班运转流程中一闪而过的灵感,也可能隐藏在项目组成员的一次头脑风暴会议之中。如何发现隐性需求、如何发现显性需求背后隐藏的东西,不能靠等待、更不能靠运气,正如前文所述,还是靠对服务(项目、产品)整体的认识和再认识,这一过程不但自己要做到,更要发动用户一起去做。基本做法还是几个俗套的词汇:积极,用心,代入,坚持。积极,就是主动性,有意识发现和思考需求;用心,就是关注细节,关注服务每一个环节、关注用户业务每一个流程、关注每一个问题、关注每一个建议;代入,就是换位思考,站在用户立场去体会服务的出发点,深入感知用户业务,找到业务与信息服务的结合点;坚持,本质是考验我们的责任心,保障全程凝神聚力,认识的过程是反复的、持续的,要做好,唯有坚持。
(二)保持正确的心态
专业心态,相信IT人的都经常听到这个说法,具体含义无需深入讨论。这里要讲的是,保持专业心态没错,但过度了,可能会变成阻挡我们发现真相的绊脚石。
正是因为专业,所以难免在与用户沟通中会发生“想当然”。比如:用户提出一个设想,而我们通过迅速的“专业化”思考,运用IT知识进行评估分析后,可能会马上得出无法实现、没有价值等结论。但被忽略的是,正是因为所谓“专业”的思考,反而局限了我们思考的范围,一切想法都脱离不了“专业”圈子也就是IT知识领域,简言之就是“想当然”,甚至可以不太确切地称之犯了“本本主义”错误。
这种“想当然”,打乱了团队成员与用户的沟通,用户思想火花可能瞬间就被对话中隐约能听出来的“你不懂IT”所浇灭,更加可怕的是用户对团队成员的态度产生不满情绪,这对于整个服务过程都是非常严重的不良影响。
专业心态本身没错,能赋予我们旺盛的活力,保持在行业中持续前进的动力。但服务过程中的思维方式因此产生较强的局限性的话,不仅危害服务本身,也阻挡了我们创新的脚步。 MIUI团队是怎么做的?用户在论坛上畅所欲言,MIUI团队要求所有成员必须每天都泡在论坛上,并按板块划分“责任田”,对用户做到有问必答,充分尊重每一位用户。这种尊重也换来了用户的认可,一切问题、建议、牢骚都发到论坛上,MIUI团队正是凭借着对这些问题、建议、牢骚的钻研,发现闪光点,获取有价值的点子。
MIUI是手机操作系统产品,高度关注的是用户体验;做IT服务的,高度关注的是服务如何对用户业务产生价值。服务必须贴近用户业务,专业之外,关心用户业务也是需要我们做到的。当然不是说时时刻刻都要去关注用户业务,可以在服务过程中去逐步了解。我是这么认为的,用户不懂IT技术,是说的过去的;而服务时对涉及的用户业务完全不知道甚至不主动去了解的话,是说不过去的。尤其是按照业务需求开发信息系统时,更应该把用户当作老师,扎扎实实进行学习。
(三)其他
除了以上两点,还有一些其他的感受。如:
循环制定短期小规模目标,并确保按期完成,是把握项目节奏的好方法;选择正确的沟通渠道并保证沟通渠道的有效性,以确保团队每个人获得的信息同步,是增加团队成员投入度、规避无价值行动、提高团队协作效率的好方法。