вівторок, 8 січня 2019 р.

build #1475

xamarin-android-linux build #1475 (Dec 6, 2018)

Debian 10
Mono JIT compiler version 5.18.0.225
Microsoft (R) Build Engine version 16.0.0.0 for Mono
NuGet Version: 4.7.0.5148
.NET Command Line Tools (2.1.502)
VSCode 1.30.1
C# extension 1.17.1

nuget issue:
The reference assemblies for framework "MonoAndroid,Version=v1.0" were not found.

solution: as usually, add TargetFrameworkRootPath to the csproj file (or add the symbolic link to the MonoAndroid folder into /usr/lib/mono/xbuild-frameworks ).

<PropertyGroup>
  <AndroidSdkDirectory>/home/.../my_sdk_dir</AndroidSdkDirectory>
  <TargetFrameworkRootPath>/usr/lib/mono/xbuild-frameworks/</TargetFrameworkRootPath>
</PropertyGroup>


Also it asks to remove "armeabi" from AndroidSupportedAbis

Then it builds TheLittleThingsPlayground project.

P.S. Monodevelop 7.7 shows all files twice in the project tree for Android, and needs a hack (Sdk tag) to remove the MonoAndroid error (there should be a normal way to do it, but I don't know how to do it today):

    <Sdk Name="Microsoft.NET.Sdk" />
<!--
    <ProjectTypeGuids>{EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-->
    <ProjectTypeGuids>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>


неділя, 9 вересня 2018 р.

Azure on Linux locally

This August I've tried to run Azure on Linux locally.

I've spent ~10 hours to understand how to configure it on Linux and how to deal with the existing issues to create and run a simple HTTP trigger.

Normally it should not be so hard.

Issues:

* it doesn't work for my locale, so I have to set en_US.utf8 , otherwise "func extensions install" doesn't work; https://github.com/Azure/azure-functions-core-tools/issues/519

* documentation didn't mention that I should run it using the "-build" flag for C#-based projects, i.e. "func host start --build"; https://github.com/MicrosoftDocs/azure-docs/issues/13253

* the latest code that have worked for me on Debian 9 was on the "artful" repository;

четвер, 23 серпня 2018 р.

ConferenceVision build


It was possible to build https://github.com/Microsoft/ConferenceVision

Some details doesn't work, but it builds and run and I was able to get a simple Achievement.

https://github.com/igorkovalchuk/ConferenceVision/tree/linux-build

README-LINUX.md

This application needs Android => 5.0 and it needs lot of Internal Storage to install. I've set 1.5 Gb

The build took 2.5 minutes.

P.S. Don't change the emulator's properties after you have created it, otherwise this application will crash when you open a camera. Probably it doesn't see the sdcard or a file storage after that.



середа, 22 серпня 2018 р.

build #993


I've moved to Xamarin.Android build #993 and Mono 5.14 and nuget,
including the new VSCode 1.25.1 and C# plugin and Monodevelop 7.5

Also I am using the dotnet sdk - it is necessary to build the netstandard2.0 projects and restore the nuget packages.

And I've updated the documentation:
https://goo.gl/mQvTJk

P.S. Monodevelop 7.5 doesn't open the Droid projects.

четвер, 16 серпня 2018 р.

issues :: AotAssemblies and release settings


Don't forget to use <AotAssemblies>false</AotAssemblies> when you build the release apk on Linux.
But I may be wrong, because things are changing from time to time.

Other settings in "Release|AnyCPU" section may include this:

    <DebugSymbols>true</DebugSymbols>
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <AndroidManagedSymbols>true</AndroidManagedSymbols>
    <AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>


    <AndroidKeyStore>True</AndroidKeyStore>
    <AndroidSigningKeyStore>/mypathtojks/my_xamarin_keystore.jks</AndroidSigningKeyStore>
    <AndroidSigningStorePass>mystorepass</AndroidSigningStorePass>
    <AndroidSigningKeyAlias>myandroidalias</AndroidSigningKeyAlias>
    <AndroidSigningKeyPass>mykeypass</AndroidSigningKeyPass>

<!--
    <AndroidSupportedAbis>armeabi-v7a;x86;x86_64;arm64-v8a;armeabi</AndroidSupportedAbis>
-->

    <AndroidSupportedAbis>armeabi-v7a</AndroidSupportedAbis>

    <AndroidLinkMode>SdkOnly</AndroidLinkMode>


You may try to use AndroidLinkMode = Full, but for me it doesn't work today.

issues :: msbuild :: "MonoAndroid,Version=v1.0" not found


If msbuild outputs the next error:

The reference assemblies for framework "MonoAndroid,Version=v1.0" were not found.

Please add the TargetFrameworkRootPath to your Droid csproj:

<PropertyGroup>
<AndroidSdkDirectory>/home/myuser/my-android-toolchain-sdk-path</AndroidSdkDirectory>
<TargetFrameworkRootPath>/usr/lib/mono/xbuild-frameworks/</TargetFrameworkRootPath>
</PropertyGroup>

Thanks to Nihal Talur for the TargetFrameworkRootPath advice.

неділя, 29 липня 2018 р.

xamarin-forms-android-linux-tools :: emulator path

If you have this message:

PANIC: Missing emulator engine program for 'x86' CPU.

The newest versions of SDK have a new path

${ANDROID_SDK}/emulator
instead of ${ANDROID_SDK}/tools

https://stackoverflow.com/a/50118004