Add the multi-project template (#20365)
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
"$schema": "http://json.schemastore.org/dotnetcli.host",
|
||||
"symbolInfo": {
|
||||
"Framework": {
|
||||
"longName": "framework"
|
||||
},
|
||||
"android": {
|
||||
"shortName": ""
|
||||
},
|
||||
"ios": {
|
||||
"shortName": ""
|
||||
},
|
||||
"maccatalyst": {
|
||||
"longName": "macos",
|
||||
"shortName": ""
|
||||
},
|
||||
"winui": {
|
||||
"longName": "windows",
|
||||
"shortName": ""
|
||||
}
|
||||
},
|
||||
"usageExamples": [
|
||||
"--framework DOTNET_TFM_VALUE --android --ios"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
{
|
||||
"$schema": "http://json.schemastore.org/ide.host",
|
||||
"icon": "ide/icon.ico",
|
||||
"unsupportedHosts": [
|
||||
{
|
||||
"id": "vs",
|
||||
"version": "(,17.3)"
|
||||
}
|
||||
],
|
||||
"requiredComponents": [
|
||||
{
|
||||
"id": "Microsoft.VisualStudio.ComponentGroup.Maui.All",
|
||||
"hostId": "vs",
|
||||
"componentType": "SetupComponent"
|
||||
}
|
||||
],
|
||||
"symbolInfo": [
|
||||
{
|
||||
"id": "Framework",
|
||||
"persistenceScope": "shared",
|
||||
"persistenceScopeName": "maui"
|
||||
},
|
||||
{
|
||||
"id": "android",
|
||||
"isVisible": true,
|
||||
"defaultValue": "true"
|
||||
},
|
||||
{
|
||||
"id": "ios",
|
||||
"isVisible": true,
|
||||
"defaultValue": "true"
|
||||
},
|
||||
{
|
||||
"id": "maccatalyst",
|
||||
"isVisible": true,
|
||||
"defaultValue": "true"
|
||||
},
|
||||
{
|
||||
"id": "winui",
|
||||
"isVisible": true,
|
||||
"defaultValue": "true"
|
||||
}
|
||||
]
|
||||
}
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/.template.config/ide/icon.ico
Normal file
После Ширина: | Высота: | Размер: 36 KiB |
|
@ -0,0 +1,195 @@
|
|||
{
|
||||
"$schema": "http://json.schemastore.org/template",
|
||||
"author": "Microsoft",
|
||||
"classifications": [ "MAUI", "Android", "iOS", "macOS", "Mac Catalyst", "Windows", "Mobile" ],
|
||||
"identity": "Microsoft.Maui.MultiProjectApp.CSharp.DOTNET_TFM_VERSION_VALUE",
|
||||
"groupIdentity": "Microsoft.Maui.MultiProjectApp",
|
||||
"precedence": "DOTNET_TFM_VERSION_MAJOR_VALUE",
|
||||
"name": ".NET MAUI Multi-Project App",
|
||||
"description": "A project for creating a .NET MAUI application for iOS, Android, Mac Catalyst and WinUI with multiple, separate app projects.",
|
||||
"shortName": "maui-multiproject",
|
||||
"tags": {
|
||||
"language": "C#",
|
||||
"type": "project"
|
||||
},
|
||||
"sourceName": "MauiApp.1",
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")",
|
||||
"path": "MauiApp.1/MainPage.xaml.cs"
|
||||
},
|
||||
{
|
||||
"condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")",
|
||||
"path": "MauiApp.1/MainPage.xaml"
|
||||
}
|
||||
],
|
||||
"postActions": [
|
||||
{
|
||||
"id": "openInEditor",
|
||||
"condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\" && HostIdentifier != \"vs\")",
|
||||
"description": "Opens MainPage.xaml in the editor.",
|
||||
"manualInstructions": [],
|
||||
"actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6",
|
||||
"args": {
|
||||
"files": "0;1"
|
||||
},
|
||||
"continueOnError": true
|
||||
}
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
"target": "./",
|
||||
"copyOnly": [ "**/*.svg", "**/*.ttf" ],
|
||||
"modifiers": [
|
||||
{
|
||||
"condition": "(!android && !AllPlatforms)",
|
||||
"exclude": [
|
||||
"MauiApp.1.Droid/**/*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"condition": "(!ios && !AllPlatforms)",
|
||||
"exclude": [
|
||||
"MauiApp.1.iOS/**/*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"condition": "(!maccatalyst && !AllPlatforms)",
|
||||
"exclude": [
|
||||
"MauiApp.1.Mac/**/*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"condition": "(!winui && !AllPlatforms)",
|
||||
"exclude": [
|
||||
"MauiApp.1.WinUI/**/*"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"preferNameDirectory": true,
|
||||
"guids": [
|
||||
"87919f9c-abb8-48e5-bae7-eb1b4140f6a8"
|
||||
],
|
||||
"symbols": {
|
||||
"applicationId": {
|
||||
"type": "parameter",
|
||||
"description": "Overrides the $(ApplicationId) in the project",
|
||||
"datatype": "string"
|
||||
},
|
||||
"msExtensionsLoggingDebugVersion": {
|
||||
"type": "parameter",
|
||||
"dataType": "string",
|
||||
"replaces": "MS_EXT_LOG_DEBUG_VERSION",
|
||||
"defaultValue": "MS_EXT_LOG_DEBUG_VERSION_VALUE"
|
||||
},
|
||||
"Framework": {
|
||||
"type": "parameter",
|
||||
"description": "The target framework for the project.",
|
||||
"datatype": "choice",
|
||||
"choices": [
|
||||
{
|
||||
"choice": "DOTNET_TFM_VALUE",
|
||||
"description": "Target DOTNET_TFM_VALUE"
|
||||
}
|
||||
],
|
||||
"replaces": "DOTNET_TFM",
|
||||
"defaultValue": "DOTNET_TFM_VALUE"
|
||||
},
|
||||
"android": {
|
||||
"type": "parameter",
|
||||
"datatype": "bool",
|
||||
"defaultValue": "false",
|
||||
"defaultIfOptionWithoutValue": "true",
|
||||
"displayName": "Android",
|
||||
"description": "Include the Android app head project"
|
||||
},
|
||||
"ios": {
|
||||
"type": "parameter",
|
||||
"datatype": "bool",
|
||||
"defaultValue": "false",
|
||||
"defaultIfOptionWithoutValue": "true",
|
||||
"displayName": "iOS",
|
||||
"description": "Include the iOS app head project"
|
||||
},
|
||||
"maccatalyst": {
|
||||
"type": "parameter",
|
||||
"datatype": "bool",
|
||||
"defaultValue": "false",
|
||||
"defaultIfOptionWithoutValue": "true",
|
||||
"displayName": "macOS using Mac Catalyst",
|
||||
"description": "Include the macOS app head project (using Mac Catalyst)"
|
||||
},
|
||||
"winui": {
|
||||
"type": "parameter",
|
||||
"datatype": "bool",
|
||||
"defaultValue": "false",
|
||||
"defaultIfOptionWithoutValue": "true",
|
||||
"displayName": "Windows using WinUI 3",
|
||||
"description": "Include the Windows app head project (using WinUI 3)"
|
||||
},
|
||||
"AllPlatforms": {
|
||||
"type": "computed",
|
||||
"value": "(!android && !ios && !maccatalyst && !winui)"
|
||||
},
|
||||
"HostIdentifier": {
|
||||
"type": "bind",
|
||||
"binding": "HostIdentifier"
|
||||
},
|
||||
"PhoneProductId": {
|
||||
"type": "generated",
|
||||
"generator": "guid",
|
||||
"replaces": "$guid9$"
|
||||
},
|
||||
"nameToLower":{
|
||||
"type": "generated",
|
||||
"generator": "casing",
|
||||
"parameters": {
|
||||
"source" : "name",
|
||||
"toLower": true
|
||||
}
|
||||
},
|
||||
"nameToAppId": {
|
||||
"type": "generated",
|
||||
"generator": "regex",
|
||||
"dataType": "string",
|
||||
"parameters": {
|
||||
"source": "nameToLower",
|
||||
"steps": [
|
||||
{
|
||||
"regex": "[^a-z0-9_\\.]",
|
||||
"replacement": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"defaultAppId":{
|
||||
"type": "generated",
|
||||
"generator": "join",
|
||||
"parameters": {
|
||||
"symbols": [
|
||||
{
|
||||
"type": "const",
|
||||
"value": "com.companyname."
|
||||
},
|
||||
{
|
||||
"type": "ref",
|
||||
"value": "nameToAppId"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"finalAppId":{
|
||||
"type":"generated",
|
||||
"generator": "coalesce",
|
||||
"parameters": {
|
||||
"sourceVariableName": "applicationId",
|
||||
"fallbackVariableName": "defaultAppId"
|
||||
},
|
||||
"replaces": "com.companyname.mauiapp"
|
||||
}
|
||||
},
|
||||
"defaultName": "MauiApp1"
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.companyname.mauiapp" android:versionCode="1" android:versionName="1.0">
|
||||
<application android:allowBackup="true" android:icon="@mipmap/appicon" android:roundIcon="@mipmap/appicon_round" android:label="@string/app_name" android:supportsRtl="true"></application>
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
</manifest>
|
|
@ -0,0 +1,19 @@
|
|||
Any raw assets you want to be deployed with your application can be placed in
|
||||
this directory (and child directories) and given a Build Action of "AndroidAsset".
|
||||
|
||||
These files will be deployed with your package and will be accessible using Android's
|
||||
AssetManager, like this:
|
||||
|
||||
public class ReadAsset : Activity
|
||||
{
|
||||
protected override void OnCreate (Bundle bundle)
|
||||
{
|
||||
base.OnCreate (bundle);
|
||||
|
||||
InputStream input = Assets.Open ("my_asset.txt");
|
||||
}
|
||||
}
|
||||
|
||||
Additionally, some Android functions will automatically load asset files:
|
||||
|
||||
Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
|
|
@ -0,0 +1,10 @@
|
|||
using Android.App;
|
||||
using Android.Content.PM;
|
||||
using Android.OS;
|
||||
|
||||
namespace MauiApp._1.Droid;
|
||||
|
||||
[Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)]
|
||||
public class MainActivity : MauiAppCompatActivity
|
||||
{
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
using Android.App;
|
||||
using Android.Runtime;
|
||||
|
||||
namespace MauiApp._1.Droid;
|
||||
|
||||
[Application]
|
||||
public class MainApplication : MauiApplication
|
||||
{
|
||||
public MainApplication(IntPtr handle, JniHandleOwnership ownership)
|
||||
: base(handle, ownership)
|
||||
{
|
||||
}
|
||||
|
||||
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>DOTNET_TFM-android</TargetFramework>
|
||||
<SupportedOSPlatformVersion>21.0</SupportedOSPlatformVersion>
|
||||
<OutputType>Exe</OutputType>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UseMaui>true</UseMaui>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Maui.Controls" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="MS_EXT_LOG_DEBUG_VERSION" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MauiApp.1\MauiApp.1.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -0,0 +1,14 @@
|
|||
namespace MauiApp._1.Droid;
|
||||
|
||||
public static class MauiProgram
|
||||
{
|
||||
public static MauiApp CreateMauiApp()
|
||||
{
|
||||
var builder = MauiApp.CreateBuilder();
|
||||
|
||||
builder
|
||||
.UseSharedMauiApp();
|
||||
|
||||
return builder.Build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
Images, layout descriptions, binary blobs and string dictionaries can be included
|
||||
in your application as resource files. Various Android APIs are designed to
|
||||
operate on the resource IDs instead of dealing with images, strings or binary blobs
|
||||
directly.
|
||||
|
||||
For example, a sample Android app that contains a user interface layout (main.xml),
|
||||
an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png)
|
||||
would keep its resources in the "Resources" directory of the application:
|
||||
|
||||
Resources/
|
||||
drawable/
|
||||
icon.png
|
||||
|
||||
layout/
|
||||
main.xml
|
||||
|
||||
values/
|
||||
strings.xml
|
||||
|
||||
In order to get the build system to recognize Android resources, set the build action to
|
||||
"AndroidResource". The native Android APIs do not operate directly with filenames, but
|
||||
instead operate on resource IDs. When you compile an Android application that uses resources,
|
||||
the build system will package the resources for distribution and generate a class called "Resource"
|
||||
(this is an Android convention) that contains the tokens for each one of the resources
|
||||
included. For example, for the above Resources layout, this is what the Resource class would expose:
|
||||
|
||||
public class Resource {
|
||||
public class Drawable {
|
||||
public const int icon = 0x123;
|
||||
}
|
||||
|
||||
public class Layout {
|
||||
public const int main = 0x456;
|
||||
}
|
||||
|
||||
public class Strings {
|
||||
public const int first_string = 0xabc;
|
||||
public const int second_string = 0xbcd;
|
||||
}
|
||||
}
|
||||
|
||||
You would then use Resource.Drawable.icon to reference the drawable/icon.png file, or
|
||||
Resource.Layout.main to reference the layout/main.xml file, or Resource.Strings.first_string
|
||||
to reference the first string in the dictionary file values/strings.xml.
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/drawable-hdpi/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 36 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/drawable-mdpi/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/drawable-xhdpi/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/drawable-xxhdpi/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 84 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/drawable-xxxhdpi/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 122 KiB |
|
@ -0,0 +1,4 @@
|
|||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@mipmap/appicon_background" />
|
||||
<foreground android:drawable="@mipmap/appicon_foreground" />
|
||||
</adaptive-icon>
|
|
@ -0,0 +1,4 @@
|
|||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@mipmap/appicon_background" />
|
||||
<foreground android:drawable="@mipmap/appicon_foreground" />
|
||||
</adaptive-icon>
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-hdpi/appicon.png
Normal file
После Ширина: | Высота: | Размер: 2.1 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-hdpi/appicon_background.png
Normal file
После Ширина: | Высота: | Размер: 97 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-hdpi/appicon_foreground.png
Normal file
После Ширина: | Высота: | Размер: 1.2 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-mdpi/appicon.png
Normal file
После Ширина: | Высота: | Размер: 1.5 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-mdpi/appicon_background.png
Normal file
После Ширина: | Высота: | Размер: 92 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-mdpi/appicon_foreground.png
Normal file
После Ширина: | Высота: | Размер: 1.2 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xhdpi/appicon.png
Normal file
После Ширина: | Высота: | Размер: 3.0 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xhdpi/appicon_background.png
Normal file
После Ширина: | Высота: | Размер: 100 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xhdpi/appicon_foreground.png
Normal file
После Ширина: | Высота: | Размер: 1.8 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxhdpi/appicon.png
Normal file
После Ширина: | Высота: | Размер: 4.6 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxhdpi/appicon_background.png
Normal file
После Ширина: | Высота: | Размер: 108 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxhdpi/appicon_foreground.png
Normal file
После Ширина: | Высота: | Размер: 1.9 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxxhdpi/appicon.png
Normal file
После Ширина: | Высота: | Размер: 6.7 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxxhdpi/appicon_background.png
Normal file
После Ширина: | Высота: | Размер: 117 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Droid/Resources/mipmap-xxxhdpi/appicon_foreground.png
Normal file
После Ширина: | Высота: | Размер: 2.7 KiB |
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<color name="colorPrimary">#512BD4</color>
|
||||
<color name="colorPrimaryDark">#2B0B98</color>
|
||||
<color name="colorAccent">#2B0B98</color>
|
||||
</resources>
|
|
@ -0,0 +1,3 @@
|
|||
<resources>
|
||||
<string name="app_name">MauiApp.1</string>
|
||||
</resources>
|
|
@ -0,0 +1,9 @@
|
|||
using Foundation;
|
||||
|
||||
namespace MauiApp._1.Mac;
|
||||
|
||||
[Register(nameof(AppDelegate))]
|
||||
public class AppDelegate : MauiUIApplicationDelegate
|
||||
{
|
||||
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
{
|
||||
"images": [
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "1x",
|
||||
"size" : "16x16",
|
||||
"filename": "Icon16.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "2x",
|
||||
"size" : "16x16",
|
||||
"filename": "Icon32.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "1x",
|
||||
"size" : "32x32",
|
||||
"filename": "Icon32.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "2x",
|
||||
"size" : "32x32",
|
||||
"filename": "Icon64.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "1x",
|
||||
"size" : "128x128",
|
||||
"filename": "Icon128.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "2x",
|
||||
"size" : "128x128",
|
||||
"filename": "Icon256.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "1x",
|
||||
"size" : "256x256",
|
||||
"filename": "Icon256.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "2x",
|
||||
"size" : "256x256",
|
||||
"filename": "Icon512.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "1x",
|
||||
"size" : "512x512",
|
||||
"filename": "Icon512.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"scale" : "2x",
|
||||
"size" : "512x512",
|
||||
"filename": "Icon1024.png"
|
||||
}
|
||||
],
|
||||
"info": {
|
||||
"version": 1,
|
||||
"author": "xcode"
|
||||
},
|
||||
}
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon1024.png
Normal file
После Ширина: | Высота: | Размер: 10 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon128.png
Normal file
После Ширина: | Высота: | Размер: 1.2 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon16.png
Normal file
После Ширина: | Высота: | Размер: 271 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon256.png
Normal file
После Ширина: | Высота: | Размер: 2.1 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon32.png
Normal file
После Ширина: | Высота: | Размер: 459 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon512.png
Normal file
После Ширина: | Высота: | Размер: 4.1 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Assets.xcassets/AppIcon.appiconset/Icon64.png
Normal file
После Ширина: | Высота: | Размер: 788 B |
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<!-- app.sandbox is required by the App Store. See https://developer.apple.com/documentation/security/app_sandbox -->
|
||||
<!--
|
||||
<key>com.apple.security.app-sandbox</key>
|
||||
<true/>
|
||||
-->
|
||||
<!-- When sandbox is enabled, this value is required if app was created with Blazor. -->
|
||||
<!--
|
||||
<key>com.apple.security.network.client</key>
|
||||
<true/>
|
||||
-->
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,34 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>MauiApp.1</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.companyname.mauiapp</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<!-- The App store requires that ITSAppUsesNonExemptEncryption to be set -->
|
||||
<!-- Please consult https://developer.apple.com/documentation/bundleresources/information_property_list/itsappusesnonexemptencryption -->
|
||||
<!-- <key>ITSAppUsesNonExemptEncryption</key> -->
|
||||
<!-- Please indicate <true/> or <false/> here. -->
|
||||
<!-- Specify the category for your app here. -->
|
||||
<!-- Please consult https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype -->
|
||||
<!-- <key>LSApplicationCategoryType</key> -->
|
||||
<!-- <string>public.app-category.YOUR-CATEGORY-HERE</string> -->
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>XSAppIconAssets</key>
|
||||
<string>Assets.xcassets/AppIcon.appiconset</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,15 @@
|
|||
using ObjCRuntime;
|
||||
using UIKit;
|
||||
|
||||
namespace MauiApp._1.Mac;
|
||||
|
||||
public class Program
|
||||
{
|
||||
// This is the main entry point of the application.
|
||||
static void Main(string[] args)
|
||||
{
|
||||
// if you want to use a different Application Delegate class from "AppDelegate"
|
||||
// you can specify it here.
|
||||
UIApplication.Main(args, null, typeof(AppDelegate));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>DOTNET_TFM-maccatalyst</TargetFramework>
|
||||
<SupportedOSPlatformVersion>13.1</SupportedOSPlatformVersion>
|
||||
<OutputType>Exe</OutputType>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UseMaui>true</UseMaui>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Maui.Controls" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="MS_EXT_LOG_DEBUG_VERSION" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MauiApp.1\MauiApp.1.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -0,0 +1,14 @@
|
|||
namespace MauiApp._1.Mac;
|
||||
|
||||
public static class MauiProgram
|
||||
{
|
||||
public static MauiApp CreateMauiApp()
|
||||
{
|
||||
var builder = MauiApp.CreateBuilder();
|
||||
|
||||
builder
|
||||
.UseSharedMauiApp();
|
||||
|
||||
return builder.Build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
This folder can contain all the Mac Catalyst-specific resources that your app may use.
|
|
@ -0,0 +1,43 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6214" systemVersion="14A314h" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES">
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6207" />
|
||||
<capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1" />
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" />
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder" />
|
||||
<view contentMode="scaleToFill" id="iN0-l3-epB">
|
||||
<rect key="frame" x="0.0" y="0.0" width="480" height="480" />
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" />
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" Copyright (c) 2017 " textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines"
|
||||
minimumFontSize="9" translatesAutoresizingMaskIntoConstraints="NO" id="8ie-xW-0ye">
|
||||
<rect key="frame" x="20" y="439" width="441" height="21" />
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17" />
|
||||
<color key="textColor" cocoaTouchSystemColor="darkTextColor" />
|
||||
<nil key="highlightedColor" />
|
||||
</label>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="NewApp" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines"
|
||||
minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="kId-c2-rCX">
|
||||
<rect key="frame" x="20" y="140" width="441" height="43" />
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="36" />
|
||||
<color key="textColor" cocoaTouchSystemColor="darkTextColor" />
|
||||
<nil key="highlightedColor" />
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite" />
|
||||
<constraints>
|
||||
<constraint firstItem="kId-c2-rCX" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="bottom" multiplier="1/3" constant="1" id="5cJ-9S-tgC" />
|
||||
<constraint firstAttribute="centerX" secondItem="kId-c2-rCX" secondAttribute="centerX" id="Koa-jz-hwk" />
|
||||
<constraint firstAttribute="bottom" secondItem="8ie-xW-0ye" secondAttribute="bottom" constant="20" id="Kzo-t9-V3l" />
|
||||
<constraint firstItem="8ie-xW-0ye" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" symbolic="YES" id="MfP-vx-nX0" />
|
||||
<constraint firstAttribute="centerX" secondItem="8ie-xW-0ye" secondAttribute="centerX" id="ZEH-qu-HZ9" />
|
||||
<constraint firstItem="kId-c2-rCX" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" symbolic="YES" id="fvb-Df-36g" />
|
||||
</constraints>
|
||||
<nil key="simulatedStatusBarMetrics" />
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics" />
|
||||
<point key="canvasLocation" x="548" y="455" />
|
||||
</view>
|
||||
</objects>
|
||||
</document>
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Resources/dotnet_bot_devices.png
Normal file
После Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Resources/dotnet_bot_devices@2x.png
Normal file
После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.Mac/Resources/dotnet_bot_devices@3x.png
Normal file
После Ширина: | Высота: | Размер: 84 KiB |
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<maui:MauiWinUIApplication
|
||||
x:Class="MauiApp._1.WinUI.App"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:maui="using:Microsoft.Maui"
|
||||
xmlns:local="using:MauiApp._1.WinUI">
|
||||
<maui:MauiWinUIApplication.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
|
||||
<!-- Other merged dictionaries here -->
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<!-- Other app resources here -->
|
||||
</ResourceDictionary>
|
||||
</maui:MauiWinUIApplication.Resources>
|
||||
</maui:MauiWinUIApplication>
|
|
@ -0,0 +1,24 @@
|
|||
using Microsoft.UI.Xaml;
|
||||
|
||||
// To learn more about WinUI, the WinUI project structure,
|
||||
// and more about our project templates, see: http://aka.ms/winui-project-info.
|
||||
|
||||
namespace MauiApp._1.WinUI;
|
||||
|
||||
/// <summary>
|
||||
/// Provides application-specific behavior to supplement the default Application class.
|
||||
/// </summary>
|
||||
public partial class App : MauiWinUIApplication
|
||||
{
|
||||
/// <summary>
|
||||
/// Initializes the singleton application object. This is the first line of authored code
|
||||
/// executed, and as such is the logical equivalent of main() or WinMain().
|
||||
/// </summary>
|
||||
public App()
|
||||
{
|
||||
this.InitializeComponent();
|
||||
}
|
||||
|
||||
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
This folder can contain all the Windows-specific assets that your app may use.
|
||||
|
||||
Accessing items here can be done using the `ms-appx` uri sceme;
|
||||
|
||||
For example, if there is a file:
|
||||
|
||||
\Assets\my_image.png
|
||||
|
||||
This can be accessed with the uri:
|
||||
|
||||
ms-appx:///Assets/my_image.png
|
||||
|
||||
The files in the root ofthe Assets folder are meant to only be accessible from
|
||||
the Windows-specific files - such as the Package.appxmanifest. When using an
|
||||
asset for the manifest, you would refer to it with the `Asset\` prefix.
|
||||
|
||||
For images that are meant to be accessed from cross-platform code, like XAML
|
||||
files, images should be placed into the `Assets\Images` folder as those are
|
||||
packaged differently to ensure the path matches that for the other platforms.
|
||||
|
||||
For more information, see the Assets\ImagesAboutWinUIImages.txt file.
|
|
@ -0,0 +1,13 @@
|
|||
This folder can contain all the Windows-specific images that your app may use.
|
||||
|
||||
The images in the `Images` sub folder are easily accessible in cross-platform
|
||||
code because they are packaged in the root of the application making them
|
||||
have a similar path to the other platforms.
|
||||
|
||||
For example, if there is a file:
|
||||
|
||||
/Assets/Images/my_image.png
|
||||
|
||||
This can be accessed with the same code as the other platforms in shared code:
|
||||
|
||||
<Image Source="my_image.png" />
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Images/dotnet_bot_devices.scale-100.png
Normal file
После Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Images/dotnet_bot_devices.scale-125.png
Normal file
После Ширина: | Высота: | Размер: 29 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Images/dotnet_bot_devices.scale-150.png
Normal file
После Ширина: | Высота: | Размер: 36 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Images/dotnet_bot_devices.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Images/dotnet_bot_devices.scale-400.png
Normal file
После Ширина: | Высота: | Размер: 122 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/LockScreenLogo.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 432 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/SplashScreen.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 5.2 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Square150x150Logo.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 1.7 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Square44x44Logo.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 637 B |
После Ширина: | Высота: | Размер: 283 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/StoreLogo.png
Normal file
После Ширина: | Высота: | Размер: 456 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.WinUI/Assets/Wide310x150Logo.scale-200.png
Normal file
После Ширина: | Высота: | Размер: 2.0 KiB |
|
@ -0,0 +1,58 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFramework>DOTNET_TFM-windows10.0.19041.0</TargetFramework>
|
||||
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
|
||||
<RootNamespace>MauiApp.1.WinUI</RootNamespace>
|
||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||
<Platforms>x86;x64;ARM64</Platforms>
|
||||
<RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
|
||||
<PublishProfile>win10-$(Platform).pubxml</PublishProfile>
|
||||
<UseWinUI>true</UseWinUI>
|
||||
<EnableMsixTooling>true</EnableMsixTooling>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UseMaui>true</UseMaui>
|
||||
<!-- We do not want XAML files to be processed as .NET MAUI XAML, but rather WinUI XAML. -->
|
||||
<EnableDefaultMauiItems>false</EnableDefaultMauiItems>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Maui.Controls" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="MS_EXT_LOG_DEBUG_VERSION" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MauiApp.1\MauiApp.1.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<!-- Make sure all image assets to be in the root of the package to match the other platforms -->
|
||||
<Content Update="Assets\Images\*" TargetPath="%(Filename)%(Extension)" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Manifest Include="$(ApplicationManifest)" />
|
||||
</ItemGroup>
|
||||
|
||||
<!--
|
||||
Defining the "Msix" ProjectCapability here allows the Single-project MSIX Packaging
|
||||
Tools extension to be activated for this project even if the Windows App SDK Nuget
|
||||
package has not yet been restored.
|
||||
-->
|
||||
<ItemGroup Condition="'$(DisableMsixProjectCapabilityAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
|
||||
<ProjectCapability Include="Msix" />
|
||||
</ItemGroup>
|
||||
|
||||
<!--
|
||||
Defining the "HasPackageAndPublishMenuAddedByProject" property here allows the Solution
|
||||
Explorer "Package and Publish" context menu entry to be enabled for this project even if
|
||||
the Windows App SDK Nuget package has not yet been restored.
|
||||
-->
|
||||
<PropertyGroup Condition="'$(DisableHasPackageAndPublishMenuAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
|
||||
<HasPackageAndPublishMenu>true</HasPackageAndPublishMenu>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
|
@ -0,0 +1,14 @@
|
|||
namespace MauiApp._1.WinUI;
|
||||
|
||||
public static class MauiProgram
|
||||
{
|
||||
public static MauiApp CreateMauiApp()
|
||||
{
|
||||
var builder = MauiApp.CreateBuilder();
|
||||
|
||||
builder
|
||||
.UseSharedMauiApp();
|
||||
|
||||
return builder.Build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Package
|
||||
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
||||
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
|
||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||
IgnorableNamespaces="uap rescap">
|
||||
|
||||
<Identity Name="com.companyname.mauiapp" Publisher="CN=User Name" Version="1.0.0.0" />
|
||||
|
||||
<mp:PhoneIdentity PhoneProductId="$guid9$" PhonePublisherId="00000000-0000-0000-0000-000000000000"/>
|
||||
|
||||
<Properties>
|
||||
<DisplayName>MauiApp.1</DisplayName>
|
||||
<PublisherDisplayName>User Name</PublisherDisplayName>
|
||||
<Logo>Assets\StoreLogo.png</Logo>
|
||||
</Properties>
|
||||
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
|
||||
</Dependencies>
|
||||
|
||||
<Resources>
|
||||
<Resource Language="x-generate"/>
|
||||
</Resources>
|
||||
|
||||
<Applications>
|
||||
<Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="$targetentrypoint$">
|
||||
<uap:VisualElements
|
||||
DisplayName="MauiApp.1"
|
||||
Description="MauiApp.1"
|
||||
BackgroundColor="transparent"
|
||||
Square150x150Logo="Assets\Square150x150Logo.png"
|
||||
Square44x44Logo="Assets\Square44x44Logo.png">
|
||||
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png" />
|
||||
<uap:SplashScreen Image="Assets\SplashScreen.png" />
|
||||
</uap:VisualElements>
|
||||
</Application>
|
||||
</Applications>
|
||||
|
||||
<Capabilities>
|
||||
<rescap:Capability Name="runFullTrust" />
|
||||
</Capabilities>
|
||||
|
||||
</Package>
|
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<PublishProtocol>FileSystem</PublishProtocol>
|
||||
<Platform>ARM64</Platform>
|
||||
<RuntimeIdentifier>win10-arm64</RuntimeIdentifier>
|
||||
<PublishDir>bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\</PublishDir>
|
||||
<SelfContained>true</SelfContained>
|
||||
<PublishSingleFile>False</PublishSingleFile>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' == 'Debug'">False</PublishReadyToRun>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' != 'Debug'">True</PublishReadyToRun>
|
||||
<!--
|
||||
See https://github.com/microsoft/CsWinRT/issues/373
|
||||
<PublishTrimmed>True</PublishTrimmed>
|
||||
-->
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<PublishProtocol>FileSystem</PublishProtocol>
|
||||
<Platform>x64</Platform>
|
||||
<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
|
||||
<PublishDir>bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\</PublishDir>
|
||||
<SelfContained>true</SelfContained>
|
||||
<PublishSingleFile>False</PublishSingleFile>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' == 'Debug'">False</PublishReadyToRun>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' != 'Debug'">True</PublishReadyToRun>
|
||||
<!--
|
||||
See https://github.com/microsoft/CsWinRT/issues/373
|
||||
<PublishTrimmed>True</PublishTrimmed>
|
||||
-->
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<PublishProtocol>FileSystem</PublishProtocol>
|
||||
<Platform>x86</Platform>
|
||||
<RuntimeIdentifier>win10-x86</RuntimeIdentifier>
|
||||
<PublishDir>bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\</PublishDir>
|
||||
<SelfContained>true</SelfContained>
|
||||
<PublishSingleFile>False</PublishSingleFile>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' == 'Debug'">False</PublishReadyToRun>
|
||||
<PublishReadyToRun Condition="'$(Configuration)' != 'Debug'">True</PublishReadyToRun>
|
||||
<!--
|
||||
See https://github.com/microsoft/CsWinRT/issues/373
|
||||
<PublishTrimmed>True</PublishTrimmed>
|
||||
-->
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"profiles": {
|
||||
"Windows Machine": {
|
||||
"commandName": "MsixPackage",
|
||||
"nativeDebugging": true
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<assemblyIdentity version="1.0.0.0" name="MauiApp.1.app"/>
|
||||
|
||||
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
|
||||
<application>
|
||||
<!--The ID below informs the system that this application is compatible with OS features first introduced in Windows 8.
|
||||
For more info see https://docs.microsoft.com/windows/win32/sysinfo/targeting-your-application-at-windows-8-1
|
||||
|
||||
It is also necessary to support features in unpackaged applications, for example the custom titlebar implementation.-->
|
||||
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />
|
||||
</application>
|
||||
</compatibility>
|
||||
|
||||
<application xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<windowsSettings>
|
||||
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitorV2</dpiAwareness>
|
||||
</windowsSettings>
|
||||
</application>
|
||||
</assembly>
|
|
@ -0,0 +1,9 @@
|
|||
using Foundation;
|
||||
|
||||
namespace MauiApp._1.iOS;
|
||||
|
||||
[Register(nameof(AppDelegate))]
|
||||
public class AppDelegate : MauiUIApplicationDelegate
|
||||
{
|
||||
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
|
||||
}
|
|
@ -0,0 +1,117 @@
|
|||
{
|
||||
"images": [
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "20x20",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon40.png"
|
||||
},
|
||||
{
|
||||
"scale": "3x",
|
||||
"size": "20x20",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon60.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "29x29",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon58.png"
|
||||
},
|
||||
{
|
||||
"scale": "3x",
|
||||
"size": "29x29",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon87.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "40x40",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon80.png"
|
||||
},
|
||||
{
|
||||
"scale": "3x",
|
||||
"size": "40x40",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon120.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "60x60",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon120.png"
|
||||
},
|
||||
{
|
||||
"scale": "3x",
|
||||
"size": "60x60",
|
||||
"idiom": "iphone",
|
||||
"filename": "Icon180.png"
|
||||
},
|
||||
{
|
||||
"scale": "1x",
|
||||
"size": "20x20",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon20.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "20x20",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon40.png"
|
||||
},
|
||||
{
|
||||
"scale": "1x",
|
||||
"size": "29x29",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon29.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "29x29",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon58.png"
|
||||
},
|
||||
{
|
||||
"scale": "1x",
|
||||
"size": "40x40",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon40.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "40x40",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon80.png"
|
||||
},
|
||||
{
|
||||
"scale": "1x",
|
||||
"size": "76x76",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon76.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "76x76",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon152.png"
|
||||
},
|
||||
{
|
||||
"scale": "2x",
|
||||
"size": "83.5x83.5",
|
||||
"idiom": "ipad",
|
||||
"filename": "Icon167.png"
|
||||
},
|
||||
{
|
||||
"scale": "1x",
|
||||
"size": "1024x1024",
|
||||
"idiom": "ios-marketing",
|
||||
"filename": "Icon1024.png"
|
||||
}
|
||||
],
|
||||
"properties": {},
|
||||
"info": {
|
||||
"version": 1,
|
||||
"author": "xcode"
|
||||
}
|
||||
}
|
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png
Normal file
После Ширина: | Высота: | Размер: 10 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png
Normal file
После Ширина: | Высота: | Размер: 1.1 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png
Normal file
После Ширина: | Высота: | Размер: 1.3 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png
Normal file
После Ширина: | Высота: | Размер: 1.5 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png
Normal file
После Ширина: | Высота: | Размер: 1.5 KiB |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png
Normal file
После Ширина: | Высота: | Размер: 352 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png
Normal file
После Ширина: | Высота: | Размер: 422 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png
Normal file
После Ширина: | Высота: | Размер: 537 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png
Normal file
После Ширина: | Высота: | Размер: 700 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png
Normal file
После Ширина: | Высота: | Размер: 700 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png
Normal file
После Ширина: | Высота: | Размер: 870 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png
Normal file
После Ширина: | Высота: | Размер: 888 B |
Двоичные данные
src/Templates/src/templates/maui-multiproject/MauiApp.1.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png
Normal file
После Ширина: | Высота: | Размер: 942 B |
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>MauiApp.1</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.companyname.mauiapp</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UIDeviceFamily</key>
|
||||
<array>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>XSAppIconAssets</key>
|
||||
<string>Assets.xcassets/AppIcon.appiconset</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,15 @@
|
|||
using ObjCRuntime;
|
||||
using UIKit;
|
||||
|
||||
namespace MauiApp._1.iOS;
|
||||
|
||||
public class Program
|
||||
{
|
||||
// This is the main entry point of the application.
|
||||
static void Main(string[] args)
|
||||
{
|
||||
// if you want to use a different Application Delegate class from "AppDelegate"
|
||||
// you can specify it here.
|
||||
UIApplication.Main(args, null, typeof(AppDelegate));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>DOTNET_TFM-ios</TargetFramework>
|
||||
<SupportedOSPlatformVersion>11.0</SupportedOSPlatformVersion>
|
||||
<OutputType>Exe</OutputType>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UseMaui>true</UseMaui>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Maui.Controls" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="$(MauiVersion)" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="MS_EXT_LOG_DEBUG_VERSION" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MauiApp.1\MauiApp.1.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -0,0 +1,14 @@
|
|||
namespace MauiApp._1.iOS;
|
||||
|
||||
public static class MauiProgram
|
||||
{
|
||||
public static MauiApp CreateMauiApp()
|
||||
{
|
||||
var builder = MauiApp.CreateBuilder();
|
||||
|
||||
builder
|
||||
.UseSharedMauiApp();
|
||||
|
||||
return builder.Build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
This folder can contain all the iOS-specific resources that your app may use.
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13771" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="222" launchScreen="YES">
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13772"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<scene sceneID="221">
|
||||
<objects>
|
||||
<viewController id="222" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="219"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="220"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="223">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="736"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="224" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-200" y="-388"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|