Android app not compatible for Android SDK built for x86 - xamarin

I've successfully upload android app based on xamarin forms in google play store, it shows the list of my real devices that are compatible but it also shows that all my emulators are not compatible with it. When I debug it from visual studio it runs on my emulator. Now that it's in google play I want to try it in my emulator since I don't currently have my physical device I can't install it due to compatibility. It says not compatible to Android SDK built for x86.

Related

Xamarin App Google Play Store Incompatible Chromebook VS 2019

I have developed an Android app using Visual Studio 2019 and Xamarin Forms, all patched with the latest updates. For verification on an Android device, I purchased an Asus C214M Chromebook and published to it from within Visual Studio. To boost my confidence level, it published and ran both debug and release versions of my app.
In the process of publishing to Play Store, I added d8 as the dex compiler and release still runs on my Chromebook.Once it is published to Play Store it shows compatibility with 13,060 devices and there are no exclusions. When searching for Chromebook or Asus my device does not show up and no Chromebooks show as compatible.
Research and testing experience show that Xamarin apps are compatible with Chromebook, so what could I be missing in the manifest or compiler settings? The link is https://play.google.com/store/apps/details?id=com.linkemupllc.wetyourwhistel. Any suggestions?

Run flutter from vs code to physical phone without Android studio or emulator on windows

I started to Learn flutter toolkit need to run the app on physical phone no need to install emulator or Android studio just I install:
A)Flutter sdk and add to windows path.
B)install vs code to use as editor , just add flutter plugin to it
C) connect my physical Android phone and already work in developer mode.
The problem when I run command
Give me that my phone not connect and when run app using F5 in vs code ask for emulator I don't need that I need physical phone only.
That is flutter doctor I have any body can help me what I need to add to my PC no need Android studio no need to add any emulator.
$ flutter doctor
[√Flutter (Channel stable, v1.12.13+hotfix.9, on Microsoft
Windows [Version 10.0.17763.1158], locale ar-SA)
[XAndroid toolchain - develop for Android devices
X Unable to locate Android SDK.
Install Android Studio from:
https://developer.android.com/studio/index.html
On first launch it will assist you in installing the Android
SDK components.
(or visit https://flutter.dev/setup/#android-setup for
detailed instructions).
If the Android SDK has been installed to a custom location, set ANDROID_HOME to that location.
You may also want to add it to your PATH environment variable.
[!Android Studio (not installed)
[√ VS Code (version 1.44.2)
[!Connected device
No devices available
Doctor found issues in 3 categories.
You must need android sdk to run flutter app on your android and xcode for running on iphone. Download android sdk and check again.

Why am I having trouble with the Android Emulator in VS Comm 2017?

I was having trouble using the Android emulator in Visual Studio Community 2017 and I decided to create a blank project to see if it will run. I get this error message when attempting to run it in the Live Xamarin Player:
Starting Android Emulator Android_Accelerated_x86_Nougat...
Failed to boot Android device emulator-5554...
Unable to deploy to Android_Accelerated_x86_Nougat, please ensure the Xamarin
Live Player app is open and the device is on the same network as Visual Studio.
Why would I have trouble running the emulator in a fresh blank project when I didn't even write a single line of code? Thanks for your help.
UPDATE: So I installed the latest Android SDK 8.0 along with they system image and tried to create a virtual device that uses it. But the Android Virtual Device Manager shows a, 'No system images installed' message when I selected the 8.0 framework. So I installed an earlier version of the SDK along with a system image (5) and was able to create a virtual device with it. So another question is why wouldn't the system images show up for the 8.0 framework?
The $(TargetFrameworkVersion) for Xamarin.Forms.Platform.Android.dll
(vv8.0) is greater than the $(TargetFrameworkVersion) for your project
(v7.1). You need to increase the $(TargetFrameworkVersion) for your
project
This means the Xamarin.Forms library is targeting Android 8.0 (API level 26) but your project is setup for Android 7.1 (API level 25). You can't change the Xamarin.Forms target version without downgrading, but you can change your project target version easily. You can learn more about these concepts from Xamarin. Be aware some of the details of that Xamarin blog post are already out of date!
There is another nice blog post from Xamarin which can walk you through the process of setting your system up for Android 8.0 API level 26. It's normally not this complicated, but Google changed their SDK tools internally between 25 and 26 in very major ways. They changed from GUI tools to command line tools.
You'll probably also want to get the (in preview) Xamarin Android Device Manager if you don't have a physical device to test with. This Xamarin Android Device Manager tool is the only way to create and configure API 26 and higher emulators without using the Google command line tools.
It seems as though Google has gotten rid of the GUI apps that manage the SDK and Virtual Devices in the latest version, so when you try to create a new virtual device with 8.0 it's not compatible with the GUI tools. Until Xamarin releases a GUI tool to replace them we can use the command-line to manage the SDK and virtual devices.
https://learn.microsoft.com/en-us/xamarin/android/troubleshooting/sdk-cli-tooling-changes
https://developer.android.com/studio/command-line/avdmanager.html

Visual Studio App Center Build for iOS

I know that all iOS apps must be built on a Mac before they can be submitted to the App store but I've noticed that Visual Studio App center provides build services - even for iOS.
Can this be used for beta testing purposes or do I still need a Mac to do the build even for beta testing purposes?
BTW, the app is an enterprise Xamarin Forms app for internal use.
Yes, you also need Mac for Beta testing.
But I use https://www.macincloud.com for testing rather then buying Expensive hardware.
It has built in Support for Xamarin and it very cheap.
iOS not like Android you also ned Apple Developer Lic. for distribute your app.
you can purchase your Lic. as your Requirement from hear : https://developer.apple.com/support/compare-memberships/
(if you just want to check how look your app in Device you can use Xamarin Live )

Impossible to create an Android Virtual Device for Android 7.0+ in Visual Studio for Mac?

This is how the Xamarin SDK Manager looked when Visual Studio for Mac was first installed. Only Android 6.0 items were downloaded/installed, and only the items pictured were installed:
By default, an Android Virtual Device called “Android_Accelerated_x86” was preconfigured and available for use when I installed Visual Studio for Mac and updated Xamarin. As far as I can tell, it is an AVD created using the “Google APIs Intel x86 Atom System Image” from the above screenshot, using Android 6.0.
I am able to debug to this Android_Accelerated_86 AVD, with a Xamarin project. It works fine as expected.
I now want to create an AVD using Android 7.1. What I did was in Visual Studio for Mac, I opened the xamarin SDK Manager, and downloaded the following items (checked in the picture):
You can see I downloaded the similarly-named “Google APIs x86 Atom System Image” for Android 7.1, as was preinstalled automatically with Visual Studio for Mac for Android 6.0.
In theory, I would think this should be all I need to be able to create a new virtual device. In visual studioI go to Tools > Google Emulator Manager, and I click "Create..." to try and create a virtual device. For Device, I've tried picking Nexus 10, Nexus 9, Nexus One, 10.1" WXGA Tablet, etc. No matter what Device I pick, if I pick a Target of Android 7.0. 7.1, or 8.0, the CPU/ABI section says "no system images installed for this target". Also, if I pick a target of “Android 6.0 – API Level 23”, it says that “no system images installed for this target”, just like it did for Android 7.0 and higher.
The ONLY way I can create a new virtual device is by picking a Target of “Google APIs (Google Inc.) - API Level 23”, and then it will let me choose “Google APIs Intel Atom (x86)”, and I assume this is because I have the “Google APIs Intel x86 Atom Image” installed from the Android 6.0 section. But I have that corresponding image installed for the Android 7.1 version as well, so why can’t I at the very least pick a target of Android 7.1 and also be given a CPU/ABI choice of “Google APIs Intel x86 Atom image”? I have the same image type as is installed for Android 6.0!
I've tried this on two different machines, with the exact same results. I've also tried downloading appropriate images for Android 7.0 and 8.0, and am still having the same problem - I can't create Android AVDs past Android version 6.0. Has anyone successfully used the SDK Manager and Google Emulator Manager to configure an AVD with Android 7.0 or later? All existing discussions about this type of problem that I can find only show Android 6.0 or earlier. I also tested this with the most recent version of Visual Studio for Mac, and have fully updated all my Xamarin components via the stable auto-update channels.
Visual Studio for Mac (VS4M) uses the Android Emulator Manager within Android SDK Tools version 25. That version from Google does not support later Android Virtual Devices AVD APIs.
If you upgrade your Android tools version to the latest version (currently 27.01), you will receive this message when trying to open the Google Emulator Manager from the VS4M's Tool menu:
As it states, the latest version of the Google Android tools has removed the standalone GUI for creating AVDs.
So you can create them via the cmd-line using avdmanager which is located within your Android SDK (android-sdk-macosx/tools/bin).
❯ ./avdmanager
Usage:
avdmanager [global options] [action] [action options]
Global options:
-s --silent : Silent mode, shows errors only.
-v --verbose : Verbose mode, shows errors, warnings and all messages.
--clear-cache: Clear the SDK Manager repository manifest cache.
-h --help : Help on a specific command.
Valid actions are composed of a verb and an optional direct object:
- list : Lists existing targets or virtual devices.
- list avd : Lists existing Android Virtual Devices.
- list target : Lists existing targets.
- list device : Lists existing devices.
- create avd : Creates a new Android Virtual Device.
- move avd : Moves or renames an Android Virtual Device.
- delete avd : Deletes an Android Virtual Device.
Personally I use the one that replaced it and that is within the Android Studio (Tools / Android / AVD Manager):
To use this one does mean that you need to download the full Android Studio dmg but I already use it for writing/compiling Java libraries for Xamarin.Android binding libraries, access to Android Instant Apps tools, etc... Also its Android SDK Platform and Tools manager is "better" than Xamarin's (IMHO/Its a personal preference thing...).

Resources