-
Notifications
You must be signed in to change notification settings - Fork 564
[Xamarin.Android.Build.Tasks] Fast Deployment v2.0 #4690
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,2 @@ | ||
| xamarin/monodroid:master@1ac5333ec5e90b4e1fb9b324714811effdede37f | ||
| xamarin/monodroid:master@767f647151936303c294d154d0d0a4da8b601464 | ||
| mono/mono:2020-02@be2226b5a1c57df065efc4c1cf008d581e5cec7d |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| --- | ||
| title: Xamarin.Android error XA0126 | ||
| description: XA0126 error code | ||
| ms.date: 08/07/2020 | ||
| --- | ||
| # Xamarin.Android error XA0126 | ||
|
|
||
| ## Issue | ||
|
|
||
| This issue happens when you are trying to use fast deployment on a device which | ||
| does not support it. Fast deployment requires features which are not available | ||
| on devices running API 20 or lower. The Fast Deployment system makes use of the | ||
| [`run-as`](https://android.googlesource.com/platform/system/core.git/+/refs/heads/master/run-as/run-as.cpp#42) feature of the Android OS. This feature was either not available or had | ||
| limited capabilities in API 20 and earlier. | ||
|
|
||
| ## Solution | ||
|
|
||
| Disable Fast Deployment by setting `EmbedAssembliesIntoApk = True` in your .csproj. | ||
| Or turn off `Fast Deployment` in the IDE. You will still be able to debug on the device, | ||
| all the required files will be packaged inside the .apk. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| --- | ||
| title: Xamarin.Android error XA0127 | ||
| description: XA0127 error code | ||
| ms.date: 08/07/2020 | ||
| --- | ||
| # Xamarin.Android error XA0127 | ||
|
|
||
| ## Issue | ||
|
|
||
| If you encounter this issue something unexpected happened with the Fast Deployment | ||
| native tooling. This is most likely to be a native crash. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe an example error message would be good here?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I've never managed to get it to crash so I'm not sure lol |
||
|
|
||
| ## Solution | ||
|
|
||
| To work around the issue disable Fast Deployment by setting `EmbedAssembliesIntoApk = True` | ||
| in your .csproj. Or turn off `Fast Deployment` in the IDE. You will still be able to debug | ||
| on the device, all the required files will be packaged inside the .apk. | ||
|
|
||
| In addition raise an issue at [https://github.com/xamarin/xamarin-android/issues/new/choose](https://github.com/xamarin/xamarin-android/issues/new/choose). Please provide the deployment log and as much detail as possible. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| --- | ||
| title: Xamarin.Android error XA0128 | ||
| description: XA0128 error code | ||
| ms.date: 08/07/2020 | ||
| --- | ||
| # Xamarin.Android error XA0128 | ||
|
|
||
| ## Issue | ||
|
|
||
| The Fast Deployment system relys on reading the output from the various system applications | ||
| on the device. This is done by reading `System.out`, which by default is where all output | ||
| will be redirected. If `log.redirect-stdio` this will cause all of the Fast Deployment tooling | ||
| to fail. | ||
|
|
||
| ## Solution | ||
|
|
||
| Disable the redirection of stdio in order to use Fast Deployment. This can be done using | ||
| the following commands. | ||
|
|
||
| ``` | ||
| adb shell stop | ||
| adb shell setprop log.redirect-stdio false | ||
| adb shell start | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is there a way to use
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. not really. Because on devices you need to run this as |
||
| ``` | ||
|
|
||
| Depending on the device you might need to run `adb root` before running the above commands. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| title: Xamarin.Android error XA0129 | ||
| description: XA0129 error code | ||
| ms.date: 08/07/2020 | ||
| --- | ||
| # Xamarin.Android error XA0129 | ||
|
|
||
| ## Issue | ||
|
|
||
| This issue happens when you are trying to use fast deployment on a device which | ||
| does not support it. In this case both the normal and backup types of fast | ||
| deployment failed. The Fast Deployment system makes use of the | ||
| [`run-as`](https://android.googlesource.com/platform/system/core.git/+/refs/heads/master/run-as/run-as.cpp#42) feature of the Android OS. This feature was either not available or had | ||
| limited capabilities in API 20 and earlier | ||
|
|
||
| ## Solution | ||
|
|
||
| Disable Fast Deployment by setting `EmbedAssembliesIntoApk = True` in your .csproj. | ||
| Or turn off `Fast Deployment` in the IDE. You will still be able to debug on the device, | ||
| all the required files will be packaged inside the .apk. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| title: Xamarin.Android error XA0130 | ||
| description: XA013- error code | ||
| ms.date: 08/07/2020 | ||
| --- | ||
| # Xamarin.Android error XA0130 | ||
|
|
||
| ## Issue | ||
|
|
||
| This issue happens when you are trying to use fast deployment on a device which | ||
| does not support it. Fast deployment requires features which are not available | ||
| on devices running API 20 or lower. The Fast Deployment system makes use of the | ||
| [`run-as`](https://android.googlesource.com/platform/system/core.git/+/refs/heads/master/run-as/run-as.cpp#42) feature of the Android OS. This feature was either not available or had | ||
| limited capabilities in API 20 and earlier. | ||
|
|
||
| ## Solution | ||
|
|
||
| Disable Fast Deployment by setting `EmbedAssembliesIntoApk = True` in your .csproj. | ||
| Or turn off `Fast Deployment` in the IDE. You will still be able to debug on the device, | ||
| all the required files will be packaged inside the .apk. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| # Fast Deployment Updates. | ||
|
|
||
| As part of this update the fast deplyment system used for Debugging apps has | ||
| been changed. The shared runtime is now no longer used or required. | ||
| The Platform package has also been make obsolete. | ||
|
|
||
| The new system also no longer uses the `external` drive for the fast deployment | ||
| files. All of the files and tooling are now stored in the applications' `internal` | ||
| directory. This has an advantage in that when the application is uninstalled all | ||
| if the files and the tooling will be removed as well. | ||
|
|
||
| The new system will not work on any devices older than API 21. This is because it | ||
| relys on features that only work from API 21 onwards. Also API 21 is the lowest | ||
| supported platform for the runtime, so running and debugging on older devices will | ||
| be impossible. | ||
|
|
||
| See [Documentation](~/android/deploy-test/building-apps/build-process.md#FastDeployment) for more details. |
Uh oh!
There was an error while loading. Please reload this page.