Граф коммитов

34 Коммитов

Автор SHA1 Сообщение Дата
Rui Marinho f8fd2811dc
Merge branch '4.0.0' 2019-05-22 22:32:28 +01:00
Rui Marinho 38711f35d0
Merge branch '3.6.0' into 4.0.0 2019-05-22 16:23:05 +01:00
Rui Marinho 9bc0fc6b0a
[Build] Update builds, remove submodule, update AssemblyInfo with GitInfo (#6068)
* [Build] Remove submodule

* [Build] Use GitInfo to set Assembly metadata

* [Build] Remove extra prop

* [Build] Update version

* [Build] Update versions to be consistent with existing Build.Tasks

* [Build] Update build number

* [Build] make sure build tasks gets info

* [Build] Add assembly info unit test

* [Test] Refactor test for gitinfo on vsts
2019-05-22 01:06:59 +01:00
Jonathan Peppers 78d662ee7d Remove Xamarin.Android.Support.v7.MediaRouter (#5941)
Context: https://github.com/xamarin/xamarin-android/issues/2982

The Blank Xamarin.Forms app template in VS 2019 takes longer to build
than in VS 2017. A little research is showing that this is due to use
of the 28.x support libraries... For example, the build includes ~20
*more* jar files in the template from 2019 than 2017. The
`_CompileDex` step alone goes from ~15.2s to ~18.2s.

This lead me down the road of investigating if we can remove any
support libraries by default in Xamarin.Forms apps. I am also seeing
if there is more we can do in Xamarin.Android for this problem, in
general.

It looks like we can remove:

* Xamarin.Android.Support.v7.MediaRouter
* Xamarin.Android.Support.Media.Compat

Neither of these appear to be used, but have been listed as
dependencies of Xamarin.Forms for a long time.

~~ Results ~~

I made these changes, then did a `Debug` build of
`Xamarin.Forms.ControlGallery.Android.csproj` for comparison.

Comparing dex file sizes (in bytes):

    Before:
    3428092 classes.dex
    3265616 classes2.dex
    6693708 total
    After:
    4938000 classes.dex
    1098772 classes2.dex
    6036772 total

This looks like it could potentially save ~600KB of compiled dex code
on every Xamarin.Forms app.

Comparing methods:

    Before:
    classes.dex  11,492 methods
    classes2.dex 19,451 methods
    total        30,943 methods
    After:
    classes.dex  22,171 methods
    classes2.dex  7,635 methods
    total        29,806 methods

~1,137 methods removed, which should help with the dex limit.

Comparing APK sizes (in bytes):

    Before:
    26442597 AndroidControlGallery.AndroidControlGallery-Signed.apk
    After:
    25741701 AndroidControlGallery.AndroidControlGallery-Signed.apk

~700KB smaller APK, due to less .NET assemblies & dex code.

Comparing build time (this was using dx):

    Before:
    19785 ms  CompileToDalvik                            1 calls
    After:
    18532 ms  CompileToDalvik                            1 calls

Looks like it saved over a second of build time for this project.

Seems like an "easy win", let's do this!
2019-04-23 13:21:21 -06:00
Rui Marinho e822046427 Merge branch '3.6.0' into 4.0.0 2019-04-02 18:28:23 +01:00
Matthew Leibowitz 6950db8bfe [nuspec] Start using the 28.x versions of Android support (#5512) 2019-04-02 16:06:59 +01:00
E.Z. Hart f1297f93d5 Re-enable "Treat warnings as errors" (#5602)
* Enable "treat warnings as errors"

* Remove unnecessary for loop

* Remove properties which already exist in base class

* Make property hiding explicit and obsolete hiding property

* Move Treat Warnings as Errors setting to props file

* Fix weird quotation changes in Xamarin.Forms.Build.Tasks.csproj

* Scrub empty WarningsAsErrors tags

* Remove unused variable

* Fix TearDown method hiding in UI tests

* Fix Id member hiding in test for Bugzilla32871

* Fix RootPage member hiding in Bugzilla51503

* Fix RooPage member hiding in Issue1483

* Disable warnings for deprecated OpenGL calls

* Fix member hiding in test view models

* Fix RootPage member hiding in Issue1931

* Fix Id member hiding in Bugzilla42620

* Fix AutomationId member hiding in Bugzilla57114

* Fix Layout member hiding in Bugzilla40911

* Remove unused variables from Bugzilla31114

* Remove unused variable

* Fix various unused variable warnings

* Disable warning to leave example code for reference

* Fix unused variable from macOS test

* Remove unused members

* Fix unused variable warnings

* Fixed unused property warnings

* Fix warnings for unused code

* Disable 'await' warning

* Remove unused variable

* Adding pragma directives for await warnings

* Remove member hiding

* Turn off global "Treat warnings as errors" in other platforms

* Use MarkerId instead of obsolete Id member

* Fix await warnings in WPF GeocoderBackend

* Add missing await

* Disable warning for unused event
2019-03-27 18:38:38 +00:00
Shane Neuville 8ef50d5214
update to support less prone to freezing (#5080) 2019-01-29 15:52:41 -07:00
Shane Neuville aa0ce13129 Changes that VS Mac and Dev16 automatically make when you open SLN (#4969)
* vsmac changes these when you open it

* dev 16 changes
2019-01-14 10:41:46 +00:00
Shane Neuville e3a83e1fa7
Material Design Renderers for the Material Visual (#4733)
* Use the auto-generated constants

* [Visual] Work on the Material Frame

* Improving the code for the sample

* Added a controller to help with frames that have additional padding
 - Android MaterialCardView does not use the default padding to determine where the content starts, rather it uses the content padding of the view because there is a border that does not affect the content

* [Visual] Added a few extra checks on Android to reduce unnecessary interop

* [Visual] A few more frame changes and some button tweaks

* [Visual] use the themers on iOS and save default properties

* [Visual] Add placeholders for themer and cache defaults

* [Visual] Added the material slider for iOS
 - Android does not have a custom control, so uses the existing renderer

* [enhancements] Move from duplicate LoadImageAsync code to GetNativeImageAsync

* [visual] Updated the controls to use the new iOS bits

* [visual] some fixes for material components

* [visual] Added hacks for material alerts

* [visual] removing the alert changes for the main branch

* [visual] Update the MaterialComponents NuGet

* [visual] Rework the theming/customization of Material controls on iOS

* [visual] fix the places where the user colors were being changed

* [visual] Improve the ColorStateList management for Android

* [visual] Re-implemented the Android ProgressBar as a fast, material renderer

* Material Entry

* [visual] Add Android ActivityIndicator

* filter out material layouts for 8.1

* remove folder

* fix __ANDROID_28__

* MaterialContextThemeWrapper

* [visual] remove the `IFrameController` interface

* [visual] reverting the changes to the Frame layout

* [visual] reverting whitespace

* [visual] make sure to raise both property changed

* formatting changes

* fixing colors on android to match with ios themes

* Update Xamarin.Forms.Platform.Android/Material/MaterialButtonRenderer.cs

Co-Authored-By: mattleibow <mattleibow@live.com>

* fix sizing of entry with infinite width size request

* update to release 28 of support

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* PR Comment changes
2019-01-07 17:07:50 -07:00
Shane Neuville a391f69e26 update to preview9 and uncomment no longer broken interface (#4727) 2018-12-13 23:46:29 +00:00
Shane Neuville 4975d0cb85 update support and sync up nuspecs (#4571) 2018-11-29 13:00:20 +00:00
Shane Neuville 94e6621f72 [Enhancement] Add Visual progress behind feature flag (#4449) fixes #4435
* Visual

* add progress bar and fix ui tint color

* Progress Bar Updates

* ios padding fixes

* padding fix and button image positioning fixes

* added button themes

* disable tint and open up material android button

* change image to bank

* add overrides for Material Frame Renderer

* remove commented out code

* change back to Full linker

* applying comment fixes

* change comparison
2018-11-23 17:40:15 +00:00
Shane Neuville d7c20b7466 [Android] Convert android projects to package reference (#4310)
* [Android] Package Reference

* [Android] forwarders

* add package id to fix nuget restore confusion

* adding packageid to the more relevant projects
2018-11-06 16:09:31 +00:00
Jonathan Peppers 8b93ece95a [msbuild] use portable pdb files (#4201)
Currently, on the first build of a "Hello World" Xamarin.Forms app,
you will see this in the build log:

    ConvertDebuggingFiles
        Parameters
            Files
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.pdb
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.pdb
        OutputItems
            _ConvertedDebuggingFiles
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.dll
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll

The logging is a little weird here, but this `ConvertDebuggingFiles`
MSBuild task takes about 100ms on my machine.

What is it doing?

The Mono debugger can support two types of debugging files:
- `mdb` files
- "portable" `pdb` files

If Xamarin.Android's build finds a "non-portable" `pdb` file, we have
to run it through this task to convert to an `mdb` file... This gives
us proper stacktraces for `FormsViewGroup.dll` and
`Xamarin.Forms.Platform.Android.dll`.

You can change the type of debugging symbols in your project with the
`DebugType` setting, which has these options:
- Blank or `None`: don't generate symbols. (Although Xamarin.Android
  has funny behavior here, see:
  https://github.com/xamarin/xamarin-android/issues/2282)
- `Full` generates an `mdb` file, this is a Windows-proprietary format
  for debug builds
- `PdbOnly` generates a "non-portable" `pdb` file, a
  Windows-proprietary format for release builds
- `Portable` generates a "portable" pdb file, which is the new
  standard that works for debug and release builds. New SDK-style
  MSBuild projects use this option by default.

These values are not case sensitive, I have mostly seen them lower
case in newer projects.

So what does Xamarin.Forms need to do?

Use `<DebugType>portable</DebugType>` in any Android class library or
app project. Other platforms, this is optional, not as much benefit. I
have heard that `DebugType=portable` might cause a problem on UWP.

* Xamarin.Forms will ship "portable" `pdbs` in its NuGet package for
  `FormsViewGroup.dll` and `Xamarin.Forms.*.Android.dll`. Developers
  won't pay the 100ms on initial build.
* Initial build times for `Xamarin.Forms.sln` will be slightly better
  for development, although I didn't measure the difference here.
2018-10-24 20:35:47 +02:00
Shane Neuville c11b2863e8 [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672) 2018-08-28 13:04:23 +01:00
Sean Davies 67f87df3d4 SwipeGestureRecognizer (#2727)
* SwipeGesture

* Fix Build Error

* Remove unused var

* Update Xamarin.Forms.Controls.csproj

* Update Xamarin.Forms.ControlGallery.Android.csproj

* Update Xamarin.Forms.Maps.Android.csproj

* Update Xamarin.Forms.Core.UnitTests.csproj

* Update Xamarin.Forms.Platform.Android.AppLinks.csproj

* Update Xamarin.Forms.ControlGallery.Android.csproj

* Update Xamarin.Forms.Controls.csproj

* Update Xamarin.Forms.ControlGallery.Android.csproj

* Update GestureManager.cs
2018-05-28 11:49:05 +01:00
Rui Marinho a3bd00b5a7
[Android] Update android packages (#2803)
* Update all android support libraries

* Update nuget deps

* [Pages] Fix build - Increase java heap size

* [Nuspec]Udpate applinks nuspec
2018-05-24 17:48:44 +01:00
E.Z. Hart 789ca0c142 Fix VS errors when loading clean solution; prevent VS rewriting Android project files (#2083)
* Disable AndroidUseLatestPlatformSdk in VS so VS stops auto-updating Android projects;
Remove XF.targets imports from projects which don't need it;
Make XF.targets imports conditional on existence of XFBT DLL in VS to avoid errors

* More consistent check for VS

* Apply nicer VS check logic to Xamarin.Forms.Xaml.UnitTests.csproj

* Fix missing "'"

* Re-add XF.targets imports to PagesGallery native projects
2018-03-14 11:01:44 +00:00
E.Z. Hart 6a2499fe13
Revert "Disable AndroidUseLatestPlatformSdk so VS stops auto-updating Android projects;"
This reverts commit 3279709d95.
2018-03-12 09:56:53 -06:00
E.Z. Hart 3279709d95
Disable AndroidUseLatestPlatformSdk so VS stops auto-updating Android projects;
Remove XF.targets imports from projects which don't need it;
Make XF.targets imports conditional on existence of XFBT DLL to avoid errors
2018-03-11 18:49:34 -06:00
Rui Marinho 47da2f8bf5
Bump submodule and update docs (#1452)
* Bump submodule

* Bump

* Fix spelling

* bump

* Fix missing docs

* [Android]Move to v8 tools
2017-12-21 19:10:25 +00:00
Stephane Delcroix c0e89187bb [Test] Make sure we always test with different Cultures (#1219)
also get rid of the 'Turkey' build configuration
2017-10-24 10:41:33 +02:00
Rui Marinho 03180ad588
Fix Android version 2017-10-19 17:20:05 +01:00
Samantha Houts 74a317c2e2 [Android] Prevent ObjectDisposedExceptions in ListViews with Header/FooterTemplates (#1155)
* Update repro to include header/footers with bound props

* [Android] Clear renderers of ListView header/footers

And don't call `RemoveAllViews`, because that causes the ObjectDisposedExceptions.
2017-10-18 22:28:18 +01:00
Rui Marinho dff6ecd7b5 [Android] Applinks firebase 42 (#1107)
* Android AppLinks updated packages and refactor to comply with Firebase packages

* made nested classes internal

* removed notimplementedexception and added a Console log when on Failure

* removed Firebase init method. Changed Console for Android's native Exception logging

* formatted code styling with Visual Studio Community 2017 for Mac

* [Android] Update nuspec and gallery

* [Packages] Update android support packages for 25.4.0.2
2017-10-09 13:25:45 -07:00
Rui Marinho 04211b2ba3 VSTS support (#803)
* Fix certs

* Try fix build reference

* Update to nuget 3.5

* Remove BingMapsSDK

* Revert git ignore change
2017-03-08 11:30:34 +00:00
Rui Marinho b645064d93 Fix tests on IOS10 [Do not merge] (#373)
* [UITests] Update packages

* [UITests] Fix formatting

* [UITests] Fix tests

* Add badges

* Update Android csproj

* fix
2016-10-04 00:45:57 +01:00
Samantha Houts b91cc14b23 [Android] Add missing 23.3.0 package dependencies 2016-04-20 12:06:48 -07:00
Rui Marinho d9ed63f0ad Update android support packages to 23.3 (#102) 2016-04-16 14:07:10 -07:00
kingces95 10f6c08ceb Mop up enabling warnings as errors (#78) 2016-04-12 11:44:30 -07:00
Paul DiPietro b2ad3e53a8 Enable CS0618 warnings as errors (#72)
CS0618 occurs when using an obsolete property or method.

https://msdn.microsoft.com/en-us/library/x5ye6x1e.aspx
2016-04-11 09:50:28 -07:00
kingces95 b7251aa6f9 Warnings as Errors in product projects 2016-04-06 10:32:29 -07:00
Jason Smith 17fdde66d9 Initial import 2016-03-22 16:13:41 -07:00