Content deleted Content added
m typo |
Maxeto0910 (talk | contribs) consistency |
||
(36 intermediate revisions by 30 users not shown) | |||
Line 1:
{{Outdated |reason=The article omits latest developments such as the newest name ("packaged apps") and related technologies such as AppContainer, AppSilo, WinUI 3, MAUI, and MSIXVC. Changes in Windows 11 aren't covered. |date=July 2024}}
{{short description|Applications usable across all compatible Microsoft Windows devices}}
[[File:Khan Academy Metro app (player).png|thumb|[[Khan Academy]], an example of a
[[File:Wikipedia App snapped to Windows 8 desktop.png|thumb|Left: A traditional desktop app without contents; it is showing 60 [[Widget (GUI)|graphical widgets]], and a thick border.<br/>Right: Metro-style app; entirely composed of contents]]
'''Universal Windows Platform''' ('''UWP''') '''apps'''<ref>{{citation|title=Microsoft is trying to change Windows software forever — here's why it'll be a tough fight|first=Matt|last=Weinberger|date=March 17, 2016|url=http://www.businessinsider.com/microsoft-universal-windows-platform-explained|access-date=June 27, 2016}}</ref> (formerly named '''Windows Store apps''', '''Metro-style apps''' and '''Modern apps''')<ref name=Harrel>{{citation|title=Metro, Modern, Now Universal? Microsoft Can't Make Up Its Mind!|first=William|last=Harrel|date=April 10, 2015|work=Digital Trends|url=http://www.digitaltrends.com/computing/microsoft-universal-apps/|access-date=June 27, 2016}}</ref> are [[Application software|applications]] that can be used across all compatible [[Microsoft Windows]] devices. They are primarily purchased and downloaded via the [[
==Nomenclature==
{{No sources|section|date=April 2024}}
Starting with [[Windows 10]], [[Microsoft]] initially used the term "Windows app" to describe [[Universal Windows Platform]] (UWP) apps. These were [[Application software|applications]] that could be installed from the [[Microsoft Store]],
With the release of the [[Windows 10
== In Windows 8.x ==
Line 19 ⟶ 21:
===Look and feel===
{{See also|Metro (design language)}}
In Windows 8.x, Metro-style apps do not run in a [[window (computing)|window]]. Instead, they either occupy the entire screen or are snapped to one side, in which case they occupy the entire height of the screen but only part of its width. They have no title bar, system menu, window borders or control buttons. Command interfaces like scroll bars are usually hidden
In response to criticism from customers
===Distribution and licensing===
For most users, the only point of entry for Metro-style apps is the [[Windows Store]]. Enterprises operating a [[Windows ___domain]] infrastructure may enter into a contract with Microsoft that allows them to [[sideload]] their line-of-business Metro-style apps, circumventing Windows Store. Also, major web browser vendors are selectively exempted from this rule, they are allowed to circumvent Microsoft guidelines and Windows Store and run a Metro-style version of themselves if the user chooses to make their product the default web browser.<ref>{{Cite web |url=
[[Windows RT]] requires all installed apps to be from the
===Multiple copies===
Before Windows 8, programs were identified by their static [[computer
There is no set limit on how many copies of desktop apps can run simultaneously. For example, one user may run as many copies of programs such as [[
== In Windows 10 and Windows 11 ==
=== Look and feel ===
{{See also|Fluent Design System}}
UWP apps can also look almost identical to traditional desktop apps, using the same legacy UI controls from Windows versions dating back to Windows 95. These are legacy desktop apps that are converted to the UWP apps and distributed using the
=== Multitasking ===
In Windows 10, most UWP apps, even those designed for Windows 8.x, are run in floating windows, and users can use the Windows taskbar and [[Task View (Windows)|Task View]] to switch between both UWP apps and desktop apps. Windows 10 also introduced "Tablet Mode". This mode is by default disabled on desktop computers and enabled on tablet computers, but desktop users can switch it on or off manually. When the Tablet Mode is off, apps may have resizable windows and visible title bars. When the Tablet Mode is enabled, resizable apps use the windowing system similar to that of Metro-style apps on Windows 8.x in that they are forced to either occupy the whole screen or be snapped to one side.<ref>{{cite web|last1=Seifert|first1=Dan|title=The nine most important updates in Windows 10|url=https://www.theverge.com/2015/7/29/9060177/microsoft-windows-10-update-changes-browser-start-menu-cortana-xbox#list-item-5|website=[[The Verge]]|publisher=[[Vox Media]]|date=29 July 2015}}</ref><ref>{{Cite web|url = https://www.theverge.com/2015/7/28/9045331/microsoft-windows-10-review|title = Windows 10 review|date = 28 July 2015|website = [[The Verge]]|publisher = [[Vox Media]]|last = Warren|first = Tom}}</ref><ref>{{Cite web|url =
UWP apps in Windows 10 can open in multiple windows. Microsoft Edge, Calculator, and Photos are examples of apps that allow this. Windows 10 v1803 (released in May 2018) added true multi-instancing capabilities, so that multiple independent copies of a UWP app can run.<ref name="multi-instancing" />
=== Licensing and distribution ===
UWP apps can be downloaded from [[Windows Store]] or can be [[Sideloading|sideloaded]]. The sideloading requirements were reduced significantly from Windows 8.x to 10, but the app must still be signed by a trusted [[digital certificate]] that chains to a [[root certificate]].<ref>{{cite AV media |last1=Sheehan |first1=John |first2=Peyman |last2=Zanjani |date=30 March 2016 |title=Project Centennial: Bringing Existing Desktop Applications to the Universal Windows Platform |medium=Video |work=Microsoft Build 2016 Conference |url=https://
==Lifecycle==
Metro-style apps are suspended when they are closed; suspended apps are terminated automatically as needed by a Windows app manager. Dynamic tiles, background components and contracts (interfaces for interacting with other apps) may require an app to be activated before a user starts it.<ref>{{cite web|last1=Joshi|first1=Bipin|title=Understanding Windows Store App Lifecycle and State Management|url=http://www.codeguru.com/win_mobile/win_store_apps/understanding-windows-store-app-lifecycle-and-state-management.htm|website=Code Guru|publisher=[[QuinStreet]]|date=22 February 2013|access-date=8 March 2016|archive-date=8 March 2016|archive-url=https://web.archive.org/web/20160308165234/http://www.codeguru.com/win_mobile/win_store_apps/understanding-windows-store-app-lifecycle-and-state-management.htm|url-status=dead}}</ref><ref>{{cite web|last1=Hale|first1=David|title=
Invoking an arbitrary Metro-style app or UWP app from the command line was first introduced in the [[Windows Insider|Insider]] build 16226 of Windows 10,<ref>{{cite web|last1=Whitechapel|first1=Andrew|title=Command-Line Activation of Universal Windows Apps|url=https://blogs.windows.com/buildingapps/2017/07/05/command-line-activation-universal-windows-apps/|website=Building Apps for Windows|publisher=[[Microsoft]]|date=5 July 2017}}</ref> which was released on 21 June 2017.<ref>{{cite web|last1=Sarkar|first1=Dona|title=Announcing Windows 10 Insider Preview Build 16226 for PC|url=https://blogs.windows.com/windowsexperience/2017/06/21/announcing-windows-10-insider-preview-build-16226-pc/|website=Windows Experience Blog|publisher=[[Microsoft]]|date=21 June 2017}}</ref>
Line 59:
===Windows Runtime===
Traditionally, Windows software is developed using the [[Windows API]]. Software has access to the Windows [[API]] with no arbitrary restrictions. Developers were free to choose their own [[programming language]] and [[development tool]]s. Metro-style apps can only be developed using [[Windows Runtime]] (WinRT). (Note that not every app using WinRT is a Metro-style app.) A limited subset of WinRT is also available for
Metro-style apps can only be developed using Microsoft's own development tools. According to Allen Bauer, Chief Scientist of [[Embarcadero Technologies]], there are APIs that every computer program must call but Microsoft has forbidden them, except when the call comes from Microsoft's own [[Visual C++]] runtime.<ref>{{cite web|last=Grange|first=Eric|title=Why no native WinRT support in Delphi XE3?|url=http://www.delphitools.info/2012/08/23/why-no-native-winrt-support-in-delphi-xe3/|work=DelphiTools|access-date=13 January 2014|date=23 August 2012}}</ref><ref>{{cite web|last=Anderson|first=Tim|title=Third-party compilers locked out of Windows Runtime development|url=http://www.itwriting.com/blog/6347-third-party-compilers-locked-out-of-windows-runtime-development.html|work=Tim Anderson's ITWriting|access-date=13 January 2014|date=23 August 2012}}</ref><ref>{{cite web|last=Bauer|first=Allen|title=HTML5 Builder|url=https://forums.embarcadero.com/message.jspa?messageID=484319#484319|work=Embarcadero Developer Network|publisher=Embarcadero Technologies|access-date=13 January 2014|date=22 August 2012|archive-date=14 June 2020|archive-url=https://web.archive.org/web/20200614102211/https://forums.embarcadero.com/message.jspa?messageID=484319#484319|url-status=dead}}</ref>
Line 66:
<!--[[Universal app]] redirects here-->
{{Main|Universal Windows Platform}}
UWP apps developed to work on [[smartphone]]s, [[personal computer]]s, [[video game console]]s and [[HoloLens]].
UWP is an extension of [[Windows Runtime]] and has access to WinRT APIs, although whether UWP apps can take advantage of WinRT APIs depends on their programming language and its tooling.<ref>{{cite web|title=What's a Universal Windows Platform (UWP) app? |at=How the Universal Windows Platform relates to Windows Runtime APIs |url=https://learn.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide#how-the-universal-windows-platform-relates-to-windows-runtime-apis |work=UWP documentation |via=[[Microsoft Learn]] |publisher=[[Microsoft]] |date=20 April 2022}}</ref>
===APPX===
Line 88 ⟶ 90:
| genre = [[Archive (computing)|Archive]]
| container for = Installation information and an EXE or MSI file
| contained by = [[ZIP (file format)|ZIP]], [[Open Packaging Conventions|OPC]]
| extended from =
| extended to = MSIX
| standard =
| open = Yes
}}
'''APPX''' is
The [[Windows Phone Store|Windows Phone 8.x Marketplace]]
===MSIX===
{{Infobox file format
| name = MSIX
| logo =
| icon =
| iconcaption =
| screenshot =
| caption =
| extension = .msix, .msixbundle
| mime =
| type code =
| uniform type =
| conforms to =
| magic =
| owner = [[Microsoft]]
| genre = [[Archive (computing)|Archive]]
| container for = Installation information, an EXE file, DLL files, and/or other bundled content ("assets")
| contained by = [[ZIP (file format)|ZIP]], [[Open Packaging Conventions|OPC]]
| extended from = [[Microsoft App-V|App-V]], APPX, [[Windows Installer|MSI]]
| extended to =
| standard =
| open = Yes
}}
[[Windows 10]] version 1709 and [[Windows Server 2019]] LTSC introduced a new installation package format called '''MSIX''', which is intended to be a replacement for both the APPX format and the [[Windows Installer]] (.msi) desktop application installation format.<ref>{{cite web|url=https://learn.microsoft.com/en-us/windows/msix/overview|title=What is MSIX?|date=11 June 2022|access-date=3 September 2024}}</ref> MSIX is now the preferred way of distributing UWP apps.<ref>{{cite web|url=https://learn.microsoft.com/en-us/windows/apps/publish/?tabs=individual%2Cmsix-pwa-getting-started|title=Get started: Publish your first app in the Microsoft Store|date=23 July 2024|access-date=3 September 2024}}</ref> An open source project called MSIX Core was started to provide MSIX support for Windows versions earlier than Windows 10 version 1709.<ref>{{cite web|url=https://learn.microsoft.com/en-us/windows/msix/msix-core/msixcore|title=MSIX Core|date=6 October 2022|access-date=3 September 2024}}</ref>
▲'''APPX''' is the [[file format]] used to distribute and install apps on Windows 8.x, 10, 11, Windows Phone 8.1, Windows 10 Mobile, Xbox One, Xbox Series X|S, Hololens, and Windows 10 IoT Core.<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/apps/hh464929.aspx |title=App packages and deployment (Windows Runtime apps) |website=[[MSDN|Windows Dev Center]] |publisher=Microsoft |access-date=8 March 2016}}</ref> Unlike legacy desktop apps, APPX is the only installation system allowed for UWP apps. It replaces the [[XAP (file format)|XAP]] file format on [[Windows Phone 8.1]], in an attempt to unify the distribution of apps for Windows Phone and Windows 8.<ref>{{cite web |url=https://www.theverge.com/2014/2/11/5400660/windows-phone-8-1-features-leaked |title=Windows Phone 8.1 includes universal apps and lots of feature updates |first=Tom |last=Warren |date=11 February 2014 |publisher=[[Vox Media]]|work=[[The Verge]]}}</ref> APPX files are only compatible with Windows Phone 8.1 and later versions, and with Windows 8 and later versions.<ref>[http://www.wphoneapps.net/2013/12/how-to-install-xap-file-on-windows-phone.html How to Install APPX File on Windows Phone 8.1] {{webarchive |url=https://web.archive.org/web/20150425033027/http://www.wphoneapps.net/2013/12/how-to-install-xap-file-on-windows-phone.html |date=April 25, 2015 }}</ref>
▲The Windows Phone 8.x Marketplace allows users to download APPX files to an [[SD Card]] and install them manually. In contrast, sideloading is prohibited on Windows 8.x, unless the user has a developers license or in a business ___domain.<ref>{{cite web|url=http://www.howtogeek.com/129535/how-to-sideload-modern-apps-on-windows-8/ |title=How To Sideload Modern Apps on Windows 8 |work=How-To Geek}}</ref>{{Unreliable source?|date=March 2016}}
==Security==
Traditional Windows applications generally have the power to use and change their ecosystem however they want to. Windows [[user account]] rights, [[User Account Control]] and [[antivirus software]] attempt to keep this ability in check and notify the user when the app tries to use it, possibly for malicious purposes.
==See also==
Line 106 ⟶ 134:
==References==
{{Reflist
{{Windows Phone}}
Line 116 ⟶ 141:
[[Category:Universal Windows Platform apps| ]]
[[Category:.NET]]
[[Category:
[[Category:Executable file formats]]
[[Category:Windows APIs]]
|