- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Windows 10真的要兼容安卓App了,微软到底想玩什么由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
最近macOS 11以及M1芯片的横空出世,让很多人对苹果的生态整合能力再次发出了惊呼。macOS 11能够兼容iOS平台的应用,这让苹果桌面和移动平台的生态得以互通互融,一举提升了macOS在生活娱乐方面的功力.
macOS 11能运行iOS App 。
但实际上,想要打通移动平台和桌面平台的,并不止是苹果一家,甚至苹果称不上是先行者。在苹果之前,微软已经作了多次尝试,例如开发WM、WP移动平台,研发.NET跨平台开发技术,推行UWP这样的多平台通用应用等等。然而微软的努力,似乎没有在市场上取得太大的反响,WP已经宣告终结,UWP应用始终难成主流,微软在消费市场的势力,现在紧缩在Windows 10这个桌面平台周围.
然而微软终究是想要突围的。最近,传出了令人在意的消息:微软正在认真考虑,让Windows 10在2021年能够兼容安卓App.
最近Win10已经对手机投屏的安卓App做出了界面优化,这或许是为Win10原生兼容App做准备 。
苹果macOS兼容自家的iOS App,这个操作我们能想象得到;微软Win10能运行同时兼容多平台的UWP应用,这个操作也不难理解;而现在Win10竟然打算兼容Google家安卓系统的App,这打的到底是什么算盘?为了让Win10同时拥有桌面和移动平台的生态,微软如此做真的有必要吗?今天,一起来谈谈这个话题吧.
Win10兼容安卓App到底是怎么回事?
首先要确认的是,Win10将兼容安卓App的消息,是有可靠来源的。根据Windows Central的报道,该项目在微软内部被称之为Latte,该项目将允许应用程序开发人员将他们的 Android 应用程序带到 Windows 10,几乎不需要修改代码。Win10将会内置安卓子系统,以实现安卓App的兼容.
从技术上来看,Win10兼容安卓App,是可行的。如果你之前关注过WP/Win10M系统,那么应该知道微软曾经在Win10M中实现过安卓模拟器(Project Astoria),能够在WP手机中运行安卓App。只不过由于效率等原因,并没有将相应版本正式推送给用户。但这也说明,微软其实早就在Windows系统中完成了对安卓App的兼容,随着硬件的进步,性能和续航的问题也将大为改善.
微软之前在WP/Win10M移动平台上,也推出过兼容安卓App的企划 。
当年的Win10M,通过某些手段,是可以安装运行安卓App的 。
实际上,打算让安卓为自己生态输血的,并不止微软一家。安卓本身就是非常适合第三方对其进行匹配,尽管它来自Google,但安卓本身分为开源的AOSP(Android Open Source Project)安卓开源项目,以及闭源的GMS(Google Mobile Service)部分。只要遵循相应的开源协议,任何人都可以通过AOSP来制作安卓的兼容层,例如Sailfish旗鱼系统,又例如最近的鸿蒙系统,都实现了对安卓App的兼容.
因此,无论从技术还是从商业的角度来看,Win10兼容安卓App的确是没有问题的——AOSP允许微软这么做,而微软也的确在Win10M中实现过类似特性。但是,这是否意味着在Win10中,安卓App就能够有完美的体验?恐怕未必.
前面提到,安卓系统分为开源的AOSP和闭源的GMS两部分。微软能使用的,是开源部分的AOSP,但偏偏在Google的运营下,越来越大的安卓App,需要一来GMS来运行.
以Google Play服务为代表的GMS,掌控着很多App的关键API,无法兼容GMS则不能通过CTS兼容认证 。
在全球范围内,Google通过掌控Google Play商店这个分发渠道,让越来越多的安卓App接入了GMS生态当中。例如App如果想要实现推送功能,它会使用Google的GCM/FCM推送;App想要实现导航定位,它会接入Google地图;游戏想要联机,那么则会接入Google Play游戏……缺乏了GMS,很多App的功能就会残缺,甚至App无法正常使用,这也是为何华为被禁止使用GMS后,在全球市场会遭遇重大挑战的原因.
而Win10兼容安卓App的项目Latte,并不能使用GMS服务,在日后也不会有兼容GMS的希望——Google从未授权非安卓系统,来使用GMS。对于此,微软需要另辟蹊径,通过自建API来实现对GMS的替代.
Win10兼容安卓App意欲何为?
微软让Win10兼容安卓App,在很多朋友的眼中,似乎是一种“资敌”行为——让自家系统也成为安卓生态的土壤,这是不是太过慷慨?微软自然不可能在做公益,实际上,微软对生态的运作,近年一直以“跨平台”、“卖服务”为中心,Win10兼容安卓App,也是这一思路的产物.
如果你经常关注微软的产品,不难发现,微软几乎成为了各大平台的“最佳开发者”。在iOS、安卓乃至最为直接竞争的macOS平台上,微软都开发了大量高质量的软件应用。像Office、OneDrive等王牌软件,微软都不遗余力地将其发布到其他平台上,甚至比自家的WP平台更上心.
这是WP/Win10M宣告死亡时,微软在Play商店发布的安卓App,比自家平台还更加上心 。
微软这样做,目的是显而易见的——让自己的产品覆盖尽量多的平台,接而完成从“产品”到“服务”的转型。通过诸多产品,无论你使用的是什么平台,都可以接触到整套微软提供的服务。使用安卓也好,iOS也好,都可以通过上面的Office编辑文档,通过Outlook同步账户发送邮件,通过OneDrive管理数据,这时候,用的是什么平台,就不那么重要了.
Win10兼容安卓App,也可以起到类似的作用,但又有所不同。这时候,不再是由微软应用来服务平台,而是用Win10这个平台来服务应用。尽管安卓App的开发是由Google来主导,但只要它们能在Win10中运行,用户愿意在Win10中使用安卓App,那么用户就不可避免地会接触到Win10内置的微软服务。从这个角度来看,Win10相当于一个集微软服务于一身的终端,能够兼容更多类型的应用软件,自然也就增加了微软服务的吸引力——目前Win10就内置“我的手机”,可以通过连接安卓手机来运行安卓App,让Win10成为安卓机的一个服务终端。而未来Win10直接能原生运行安卓App,只是节省了必须连接安卓机这个步骤而已.
Win10中“我的手机”运行安卓App的效果 。
让Win10兼容安卓App,并不是微软这一思路的唯一成果。例如,微软就已经通过WSL,让Win10兼容原生Linux系统,Linux开发者可以直接使用Win10来工作;又例如,Edge浏览器放弃了自研内核转用Chromium,获得了完全兼容Chrome扩展程序的能力,结果我们也看到了,Edge浏览器从Chrome手中抢过了大片份额,越来越多人接触到了微软在Edge浏览器中植入的笔记、记录同步等服务.
Win10中的WSL,让Linux开发者能够在Win平台下进行Linux开发,增加对微软服务的接触机会 。
简而言之,Win10拥有自己的生态,这固然重要;但Win10是否能兼容其他生态、让微软的服务渗透到更多用户当中去,也很重要。应用的虚拟化、跨平台在未来是大趋势,在微软缺乏移动平台这个重要立足点的现状下,微软更加激进地推行了用一个Win10系统、兼容多种平台生态的策略,也是一种合理的选择.
总结 。
微软让Win10兼容安卓App,乃至更多平台的应用,这无疑可以增强Win10的竞争力,让微软服务覆盖到更多用户当中。但这也会带来其他一些问题,例如微软能否建立起一套足够完善的API,用以取代安卓App所需要的GMS?就如同正在起步的华为HMS一样?又例如安卓App并不是为桌面环境所准备,Win10要如何确保它们依然能获得良好的体验?触屏电脑的普及真的能解决这个问题吗?这都是有待观察的.
无论如何,Win10兼容安卓App的确是一个很有趣而且颇有意义的尝试,让我们期待Win10正式上线这一特性吧.
最后此篇关于Windows 10真的要兼容安卓App了,微软到底想玩什么的文章就讲到这里了,如果你想了解更多关于Windows 10真的要兼容安卓App了,微软到底想玩什么的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
为什么我可以在控制台 window.window.window.window 中执行此操作并无限追加 .window 并返回 DOM 窗口? 最佳答案 因为 window 对象有一个指向它自身的 wi
Windows管理员用户和系统用户之间有什么权限区别吗? 有些时候,我必须将 cmd 窗口提升到系统权限才能删除一些文件。这可能是因为系统用户锁定了文件,或者系统用户可能具有更高的访问权限,我希望找出
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
Windows 服务和 Windows 进程之间的区别是什么? 最佳答案 服务是真正的 Windows 进程,没有区别。服务的唯一特殊之处在于它由操作系统启动并在单独的 session 中运行。一个独
我有一个 Windows 网络 (peer-2-peer) 以及 Active Directory,我需要记录向服务器发送任何类型打印的用户的名称。我想编写一个程序来记录他们的用户名和/或他们各自的
当我让一个 Windows 服务尝试安装另一个 Windows 服务时遇到问题。 具体来说,我有一个 TeamCity 代理在 Windows 2008 AWS 实例上为我运行测试。这些测试是用 Ja
我创建了一个应用程序来接收广播的 Windows 消息,效果很好。当我把它变成一个服务、安装它并启动服务时,该服务没有收到消息。 最佳答案 服务可能必须被授予访问桌面的权限。从服务属性、“登录”选项卡
我正在使用 Delphi 2010 编写应用程序。我希望在 Windows 启动时启动我的应用程序。我需要它在最新版本的 Windows XP、7.0 和最新的服务器中工作。 将其存储在以下关键工作下
我想开发一个适用于所有三个版本的 Windows XP、Vista 和 7 的应用程序。该应用程序允许人们选择要打开的文件,并允许他们在某些操作后保存文件。三个版本的 Windows 中的每一个都有不
对于\Windows\中的文件类型与\Windows\System32 中的文件类型是否有标准约定? 我正在开发一个 SDK,其中包含各种 DLL、帮助程序 exe 和 Windows 服务 exe。
要求是,必须在 WINDOWS7 机器上配置自动登录,但是这个自动登录应该等待(即延迟)直到另一个 Windows 服务发出继续自动登录的信号。 我使用了自定义凭据提供程序,它在其中等待另一个 Win
很抱歉,这不是一个大问题,而是更多的帮助人们解决这些特定问题的方法。我正在解决的问题要求使用串行I/O,但主要在Windows CE 6.0下运行。但是,最近有人问我是否也可以在Windows下运行该
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
不幸的是 SC 命令在 W2000 上还不可用,所以我不能使用它。 我正在尝试检查服务是否在 W2000 服务器上运行,如果它没有运行,脚本应该能够启动该服务。 如何在 Windows 2000 上执
如何在登录到 Windows 之前启动 Windows 窗体应用程序?是否可以在登录到 Windows 之前启动 Windows 窗体应用程序?如果不是,我是否有机会在登录前启动 Windows 服务
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我想在 XML 文件中区分 Windows XP 和 Windows 7。我想我会在 XML 中为它使用一个环境变量。 但是我找不到在 Windows 中定义的任何系统环境变量来提供此信息。 我看到了
有谁知道我可以在注册表中的哪个位置检查机器上是否安装了这些应用程序: Windows 通讯录 Windows 联系人 最佳答案 来自 Microsoft:我知道它说的是 win 95,但 reg 是一
我正在尝试从我的 Windows 服务器调用放置在远程 Windows 服务器上的批处理文件。我在远程服务器上安装了 freeSSHd。我尝试使用 putty/plink 但没有结果。 我使用的命令语
( 大家好。我是 Windows 编程的新手,所以如果已经有人问过我,我提前道歉,我只是不知道要搜索什么,但这个问题一直让我发疯,我知道有人可能真的很容易回答这个问题。) 我的公司有一个在 Windo
我是一名优秀的程序员,十分优秀!