Related
I've started with Xamarin and Android using Visual Studio 2013.
When I start debugging the android app, it builds, deploys to device and then debugging in Visual Studio stops. I can't hit any breakpoint. App is working in device, but I cannot debug it.
Am I missing something?
I've tried various emulators and a physical android device but debugging doesn't work in any of them. It just act like I have stopped it.
Debugging the same solution in Xamarin Studio works, I just can't get it working in Visual Studio.
I was having the same problem and I found this workaround with Hyper-V in Xamarin's documentation: https://developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/debug-on-emulator/visual-studio-android-emulator/
TL;DR; Open Hyper-V Manager -> Go to settings on your emulator -> Go to processor settings -> Select Compatibility -> Mark the "Migrate to a physical computer with a different processor version" checkbox -> Done! (At least for me) VS is now debugging my Android App
Another reason why Visual studio can't debug Android Xamarin app with a Hyper-V is due to you don´t have 'Deploy" option check in android project.
Steps: 1) Enter in "Solution properties" 2) Select "Configurarion Properties" 3) Check "Deploy" in Android project.
Make sure you are running on Debug mode (on target).
Then, check the Properties of the App Project and see if it's using the Xamarin debugger instead of the VisualStudio Debugger.
Enter in "Solution properties"
Select "Configurarion Properties"
Check "Deploy" in Android project.
Open Hyper-V Manager
Go to settings on your emulator
Go to processor settings
Select Compatibility
Mark the "Migrate to a physical computer with a different processor version" checkbox
This will also happen if you don't have any activity marked as your main launcher activity:
[Activity(
...
MainLauncher = true,
...)]
public class MainActivity ...
Easy mistake to make if you're shifting code in from a prior project and the prior project is using a splash activity and your new project is not yet doing so.
Go to property of app project then click android option and checked checkbox in debugging section.then run again.
For anyone who might still need help. Also make sure the build and deploy checkbox's are checked in the configuration manager. .
In my case, after some investigation, I saw I was having this warning: "Failed to read .android.dll' with debugging symbols. Retrying to load it without it. Error details are logged below. 2>Mono.Cecil.Cil.SymbolsNotMatchingException: symbols were found but are not mathing the assembly"
The solution was to disable linking:
Right-click the Android Project -> Properties -> Android Options -> Under "Linker properties", set Linking to None (see image below)
Got this from TedFalasco's answer on this post.
Hyper-V manager can't be installed on Windows 7 (only the management tool gets installed) so if you get this problem, following those steps don't help.
Here is the thing that worked for me and it's mentioned here as an answer but hasn't been marked up or marked as an answer. This is actually the best and easiest solution. nothing else worked for me.
In Visual studio, make sure you choose the solution file (not project files) in the solution explorer. Then go "Project > [project]properties"
in the left pane choose "Configuration Properties > Configuration"
Now check the Deploy feature if possible. Only deployable projects have the option.
This saved my life and I almost gave up on Xamarin. I really hope this helps others like me.....
In my case, the warning was self-explanatory:
Set the debugging information to Portable in the Visual Studio project property pages or edit the project file in a text editor and set the 'DebugType' MSBuild property to 'portable' to use the newer
In other words: Right click on project => properties => build => click on advanced => set the debugging information to portable.
I have tried every answer and none of them worked.
Here is what I did to make it work again:
Plug your physical android device to the computer. Android device must have Developer options enabled.
Choose your android device in Visual Studio.
Run app in Debug mode. Your app should appear on your android device.
Unplug your android device from computer.
Try running your app in android emulator. For me Debug option starts working again.
I just installed VS 2015, the installation was finish (after some fail time caused by the slow network, I run setup again).
I create a project as Android > Android blank project
When I press F5, the build is seem to by success but the deploy is fail, there isn't error message. Tried set Tool->Option->Build->Diagnostic, no result. VS 2015 is pretty new, is anyone met this? How can I fix this?
I bumped into the same, but I started VS2015 as Administrator and solved the problem.
Is any Android Virtual Device running?
Open AVD menu
Launch the device
Wait for it to fully load
Build and deploy
Find your app in device's menu and execute it
Visual Studio gets stuck trying to deploy the app to the emulator or the emulator does not appear as a debug target in other IDEs
If the emulator is running, but it does not appear to be connected to ADB (Android Debug Bridge) or it does not appear in Android tools that make use of ADB (for example, Android Studio or Eclipse), you may need to adjust where the emulator looks for ADB.
The emulator uses a registry key to identify the base location of your Android SDK, and looks for the \platform-tools\adb.exe file under that directory. To modify the Android SDK path used by the emulator:
Open Registry Editor by selecting Run from the Start buttons context menu, typing regedit in the dialog box, and choosing OK.
Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools in the folder tree on the left.
Modify the Path registry variable to match the path to your Android SDK.
Restart the emulator and you should now be able to see the emulator connected to ADB and associated Android tools.
And yet another recipe of fixing this:
clean projects
remove all bin, obj folders
mark your android-project
as startup
then try to deploy again
As for me, in some cases, if visual studio stucked on project building, it requires pc reboot.
I had the same annoying issue. Going to Options -> Xamarin -> Android Setting and checking Preserve application data/cache on device between deploys solved my problem.
I was facing same issue.
Just reopen visual studio and rebuild your project..and then try to deploy.
Its worked for me!
According to Magnus Grindal Bakken's comment, I found the solution.
1) The installation must have an internet connection to be completed.
Any interruption may cause components to be excluded.
2) You need android emulator. Installing the Android SDK and Visual Studio 2015, is not sufficient, You either need the Microsoft emulator, the android one or another third party emulator (like Genymotion). You also need to ensure that the Xamarin plugins for Visual Studio are installed.
Xamarin for Visual Studio can be downloaded here. Once it is installed Visual Studio will be able to create and run Xamarin projects. Xamarin for VS includes the Xamarin Player for emulation. I think it's even better than Genymotion.
Start emulator via AVD manger ... [start] button (as user m93a suggested).
And next option contains check option "wipe user data". Check it !
It helps me solve this problem. Then deploy or debug the application and all process will works as expected.
I had the same problem with my XF App, it didn't deploy and just one message saying Deployment Failed, internal error....
I solved it. Working on Mac with Xamarin Studio, make sure that the ABI of your simulator is supported by your app.
Xamarin Studio Android project Options
Just run your Visual studio as Administrator mode.
Sometimes the physical Android device gets confused about versions.
On the device, to go settings | Applications Manager | All applications.
Manually delete your application.
Manually delete "Mono Shared Runtime" (don't worry it will reinstall during deploy)
Make any change in your project so it is seen as altered and needing to be recompiled: Add a new blank-line to a .cs file or something.
Build
Debug/deploy
I faced that problem couple hours ago, I tried to deactivate hyper-V and it worked for me.
In the Android App project Properties in Visual Studio I had to go to Android Options>Advanced and make sure the Support architectures had the architecture of my AVD checked.
In my case this was x86_64 (which, by the way, does not have a particularly discovereable method of installation - took me days).
First of all, we can find the error in "Details" when we click "Start" button on "AVD Manager" for "Android_Accelerated_x86". If the error is as follows :
Please ensure Intel HAXM is properly installed and usable. CPU
acceleration status: HAXM is not installed on this machine
So, in this case we need to install "Intel® Hardware Accelerated Execution Manager". It can be downloaded from following link :
haxm-windows_v6_0_6.zip (6.0.6)
Note: After installing Xamarin for the first time in visual studio 2015 i had the same error to run "Android_Accelerated_x86". After installing this accelerated emulator is now up and running.
If the emulator does not even lauch, maybe deploy is skipped.
You cas see this in the output console.
If so, you may have to activate the deploy by checking it in the solution's (not project) parameters.
If the emulator launches but the deploy won't end after minutes, with no error, try the steps described here : https://stackoverflow.com/a/32564067/7505268
That solved it for me.
I had Xamarin Android Player opened while trying to deploy the Android project. This steps worked for me:
Closed Xamarin Android Player
Ran Android project again
in my case I had this problem because "Solution Configuration" was set to Release. I change it back to Debug and I solve the problem
Try one of the following and see if you can get the app to deploy to your device.
Clean and build project/solution
Make sure you have updated all the NuGet packages (Right click on solution and click on Manage NuGet Packages.... Then check in Updates section whether there are any updates)
Make sure you have installed all the necessary SDKs from the Android SDK Manager
Check whether you have selected the correct project as the startup
Check if you have set the correct path for Android SDK and NDK locations
Make sure you have checked Deploy for your selected project from Build -> Configuration Manager
Well there can be many reasons,one of them could be that from the Build section in your toolbar,if you check the configuration manager there will be project names that are available in your current solution all you have to check is if the deploy checkbox is checked or not.If not kindly check it and things will work just fine
This worked for me:
Making sure that Define DEBUG constant is checked.
Using Log.Info("yourTag-AnyString", "Error before/after ");
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
Log.Info(tag, "Error before Layout");
SetContentView(Resource.Layout.Main);
// Get our button from the layout resource,
// and attach an event to it
//Button button = FindViewById<Button>(Resource.Id.MyButton);
//button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); };
Log.Info(tag, "Error before variables");
userName = FindViewById<EditText>(Resource.Id.editTextUsername);
password = FindViewById<EditText>(Resource.Id.editTextPassword);
btnInsert = FindViewById<Button>(Resource.Id.btnInsert);
Log.Info(tag, "Error after variables");
btnInsert.Click += BtnInsert_Click;
}
changing emulators or exporting the signed .apk instead
For android apps, using android device logging
There is actually a connection between running Visual Studio as administrator and setting the registry path.
I followed the instructions here but it only worked after running VS as admin because my Android SDK path is in "C:\Program Files (x86)". So in order to add or change files there you need admin rights. Alternatively you can change the permissions of the "Android" folder so that the group "Users" as full access. This worked for me as well.
Or you make sure you don't even install the Android SDK in "C:\Program Files (x86)".
By the way I found that restarting VS, or even the Emulator again wasn't necessary after I added the registry key. It picks it up when it needs to.
Just got the new Android Studio but it won't connect for updates. When I go to Help>Check for Updates... I get a pop-up sayin:
Connection failed. Please check your network connection and try again.
I tried changing my network settings around (Static/DHCP).
I tried "Auto-Detect Proxy settings".
I tried Adding "studio.exe" to my inbound/outbound rules of windows
firewall, I also have "Java(TM) Platform SE binary" added (The VM
running Idea).
I tried looking around my hosts file to see if I messed something up
in there.
I run normal IDEA and my updates connect, but obviously tells me there is no new updates.
Has anyone else run into this problem or found a solution to this? My colleagues at work here did not have this problem at all, only the "JAVA_HOME" issue on one of my colleagues' machines.
The following steps may help to fix this issue:
Open configuration
Select Settings
Select HTTP Proxy
Change no proxy to auto-direct proxy settings
Click check connection . check with any Site
done
Looks like it is a bug in Android Studio. Others are having the same problem, check out here and here. It's worth remembering that v0.1 is an Early Access Preview as described on the official Android web site.
I have checked the base IDE's FAQs and found an answer that helped me out: edit the file ending with .vmoption in Program Files (x86)\Android\android-studio\bin and add the following option:
-Djava.net.preferIPv4Stack=true
or if you prefer IPv6:
-Djava.net.preferIPv6Addresses=true
It works for me.
Source: http://intellij-support.jetbrains.com/entries/23403071-Network-connectivity-issues-when-running-under-Java-1-7
None of these answers helped me nor did trying to manually add the downloads certs to my java and jdk keystores. If you are in the same spot as me, try editing your vmoptions files to include the paths.
On Windows you need to open an editor with admin privs and you can find the files here:
Program Files (x86)\Android\android-studio\bin
Add these two lines to whichever version of AS you use or both to be sure.
-Didea.updates.url=http://dl.google.com/android/studio/patches/updates.xml
-Didea.patches.url=http://dl.google.com/android/studio/patches/
I discovered this via a note from a Google dev: https://code.google.com/p/android/issues/detail?id=74610&q=android%20studio%20connection%20failed&sort=-stars&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars
I am not sure if our problems are identical, but when I had trouble updating Android Studio I ran it as administrator and then tried to update and it worked. I solved a similar problem on Eclipse in the same manner.
I updated my Android Studio to 1.5.1 and met the same problem.
I'm using ShadowSocks and I guess it caused this issue. I changed HTTP Proxy setting from no proxy to auto detect and it was solved. You can click "Check connection" and enter any URL to test whether auto proxy detection works.
I can update it using the astrill VPN. its website.
Step 1 is vague. Please indicate where this "Open Configuration" step occurs. Is this the Internet Properties for the computer, or some dialog buried deep within the bowels of Android Studio? I have searched and cannot find anything called "Configuration" or "Open Configuration" within Android Studio. Possible candidates might be (from the available / non-grayed out menu items):
File -> Settings
File -> Other Settings -> Default Settings...
File -> Other Settings -> Configure plugins...
Run -> Edit Configurations...
Help -> Configure Debug Log Settings
However none of these choices offer up anything that allows you to follow the indicated next steps.
I am on Windows 7, running Android Studio (Preview) 0.5.2 and the only reason I'm trying to use AS is because of the stupid logcat scroll problem in Eclipse (another crappy editor).
If someone could recommend a solution to the AS update / connection issue (yes, I checked, the other solutions on here don't work either), Eclipse non-locking scroll lock (yes, I checked, the solutions on here don't work), or an actual functioning Android plugin for NetBeans, I'd be extremely grateful. Thanks!
I have a problem during the installation of Android in Eclipse (Indigo and Helios, i've tried many different versions). When i search the plugin with the adress http://dl-ssl.google.com/android/eclipse/ , or localy (with the archive), it doesn't work.
It found the developpment tools, but it block at "calculating requirements and dependencies".
What's the problem ?
If you are installing from a local site, uncheck "Contact all update sites during install to find required software".
I had the same issue with win 7 x64 and any version of Eclipse. It's because it cannot connect to the Internet, sometimes it's just because of your firewall blocking its Internet access. But most probably, if it isn't the case, you need to go to your Eclipse preferences, General -> Network Connections -> choose Direct from drop down menu => everything should be unchecked now. It was the only thing that helped me on Win 7 x64. I don't have such issues on Win XP.
I had exactly the same problem, eclipse was stuck at "calculating requirements and dependencies " for ages.I searched the web and found a lot of solutions but none worked for me. So i booted in safe mode with networking (press F8) then started eclipse. It installed in 2 minutes. My AVG antivirus was blocking eclipse from accessing the internet. Hope it works for you too
Its causes because of these two reasons...
Your antivirus is not authoring eclipse to download the require data.
Or your firewall not allowing you to access downloading server.
Solution:
Simply open your antivirus panel "stop its working till the data is not installed".
And if 1st one do not works then open firewall setting and make it off till the data is not installed...
I had same problem, and I solve it.
Let's check below list.
Eclipse have blocked by your Anti-virus program or Fire wall
If you have checked, then UNCHECK 'contact all update sites ...' item.
Please click image button & refer it. (Marked with red line).
enter image description here
I had this happen when attempting to install an update after one of the update sites I had added to my Eclipse install went dead (the plugin provider changed the URLs for accessing their update site).
If it's due to a dead update site, it can often be solved by unchecking "contact all update sites during the install to find required software".
If you know which update site is causing the issue, and want to delete/disable it, or if you need access to other update sites during the install, you can temporarily disable or permanently remove update sites from Preferences->Install/Update->Available Software Sites.
I had the same problem on my Ubuntu. I guess you can solve your problem in the following way:
Load Eclipse. Click on Help > Install new software > Add and then for v3.7.x in the name box enter Indigo and in the URL box enter http://download.eclipse.org/releases/indigo then just follow the instructions to install the ADT plug-in and it will work.
If you are using other versions of Eclipse you need to change the name and url to the following -
v3.7.x Indigo - http://download.eclipse.org/releases/indigo
v3.6.x Helios - http://download.eclipse.org/releases/helios
I had a similar problem while attempting to install an Eclipse Plugin - ShellEd. It got stuck at the same point. As it points out the network problem, I simply disabled my WiFi connection while installing from a downloaded archive and the installation gets through.
Or just quit / relaunch eclipse, attempt to update it, fiddle with it until it will eventually install ADT
I'm trying to install a platform but when I open Android Manager then I click Available Software then select the
https://dl-ssl.google.com/android/repository/repository.xml repository
I get this error:
Failed to fetch URL https://dl-ssl.google.com/android/repository/repository.xml
I have also tried downloading by clicking on force "http:" for all "https:" downloads on settings panel but it still doesn't help.
I'm working on Windows Vista.
Try this solution and it worked. this problem is caused because ADB is unable to connect to the android servers to fetch updates. (If at home try turning off firewall)
Goto Android SDK Manager
c://android-sdk-windows/ open
SDK-Manager
Click Settings - Will be
asked for a proxy.
If have one enter
the IP address and the port number.
If not turn off your firewall.
Check
"Force https://... " (to force SDK Manager to use http, not https)
This should work immediately.
If you enter the URL in a browser and then look at the source code of the page you will see that an XML document is returned.
The reason why that URL would work in a browser but not in the android manager might be that you are required to specify a proxy server. In Eclipse (3.5.2) the proxy settings can be found here: "Window" -> "Preferences" -> "General" -> "Network Connections"
All that was necessary for me, a Ubuntu user, was to change the owner of the ~/.android directory. In a terminal type the following command:
sudo chown -R username:username ~/.android
Obviously, you must replace "username" (twice) with your username.
I wasn't sure if I should post this as an answer because the original poster's question was concerning Windows Vista, not Ubuntu. However I found this post whilst searching for the answer on Ubuntu so I believe it is pertinent. I don't have sufficient reputation to comment on +Maher Gamal's answer, though, which is what lead me to this answer. Hopefully someone else finds it useful!
In Mac OS X, the solution is creating the file androidtool.cfg in our user .android folder and then add this line. Sure it is working also for Linux
sdkman.force.http=true
I hope that helps!
Open Android SDK Manager and open menu Tools->Options
in Proxy Setting Part
Set your proxy and ok
Investigating this error on my new Win 7 laptop, I found my ADT plugin to be missing. By adding this I solved the problem:
Downloading the ADT Plugin
Use the Update Manager feature of your Eclipse installation to install the latest revision of ADT on your development computer.
Assuming that you have a compatible version of the Eclipse IDE installed, as described in Preparing for Installation, above, follow these steps to download the ADT plugin and install it in your Eclipse environment.
Start Eclipse, then select Help > Install New Software....
Click Add, in the top-right corner.
In the Add Repository dialog that appears, enter "ADT Plugin" for the Name and the following URL for the Location:
https://dl-ssl.google.com/android/eclipse/
Click OK
Note: If you have trouble acquiring the plugin, try using "http" in the Location URL, instead of "https" (https is preferred for security reasons).
In the Available Software dialog, select the checkbox next to Developer Tools and click Next.
In the next window, you'll see a list of the tools to be downloaded. Click Next.
Read and accept the license agreements, then click Finish.
Note: If you get a security warning saying that the authenticity or validity of the software can't be established, click OK.
When the installation completes, restart Eclipse.
I am using Kaspersky. I just turned it off and the issue was solved!
I got the solution for the Android Studio installation after trying everything that I could find on the Internet. If you're using Android Studio and getting this error:
Find [Path_to_Android_SDK]\sdk\tools\android.bat.
In my case, it was in C:\Users\Nathan\AppData\Local\Android\android-studio\sdk\tools\android.bat.
Right-click it, hit Edit, and scroll all the way down to the bottom.
Find where it says: call %java_exe% %REMOTE_DEBUG% ...
Replace that with call %java_exe% -Djava.net.preferIPv4Stack=true %REMOTE_DEBUG% ...
Restart Android Studio/SDK and everything works. This fixed many issues for me, including being unable to fetch XML files or create new projects.
I had the same problem: the latest update failed to install because it couldn't
rename the tools folder in android-sdk-windows. I'm using AVG antivirus and
disabling it didn't help, but I don't think it had anything to do with the AV program
anyway.
Fact is, running the Android SDK setup apparently uses items in the
"android-sdk-windows\tools" directory. I'm on Win Vista x32 so maybe that causes some
unique situation - I'm not sure.
Solution:
I made a copy of the tools folder itself (keeping it at the same directory tree
level, thus "tools" and "tools-copy" were both in the "android-sdk-windows" folder).
I ran Android.bat from that copy
I ran the update without problems (it updated the original,
not-being-used-at-the-moment tools folder, among whatever other items it needed to).
I closed the SDK, deleted the folder (I had to kill the adb.exe process first - not
sure why that always persists but you can't delete the folder without doing that).
I restarted the SDK from the normal (now-updated) tools folder. Worked like a charm!
Note that simply killing adb.exe was NOT sufficient to get around the original
issue... only by copying the tools folder and using the copy to run Android for the
duration of the update process was enough to rectify the problem.
I hope this helps others... it's quite vexing to have to spend time resolving basic
issues like this just to run an update.
If you open /Users/{your name}/android sdks/tools/android (double click it), then click on "Android SDK Manager" menu and then "Preferences" and then you can change your proxy settings specifically for Android SDK Manager. These proxy settings also apply to "Android SDK Manager" if used within Eclipse.
After 7 long hours of searching I finally found the way!!
None of the above solutions worked, only one of them pointed towards the issue!
If you are on Win7, then your Firewall blocks the SDK Manager from retrieving the addon list.
You will have to add "android.bat" and "java.exe" to the trusted files and bingo! everything will start working!!
I had the same problem, made all the workarounds you advised: still the same error.
I updated Eclipse via "Help / Check for updates" and now everything is ok.
This update brought a completely new version of the Android SDK Manager.
Also, try to turn off your firewall and try to update with link.
I had the same problem. I use Ubuntu 12.04. I tried disabling ipv6.
Modify the /etc/sysctl.conf and add the following:
#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Then restart the machine and check. I think this may be a ipv6 issue even in Windows OS.
I had a similar situation where I had the proxy settings already set and the SDK manager wasn't able to modify them permanently. Modifying manually the ~/.android/androidtool.cfg file fixed the issue.
Had the same issue on 64 bit win7 machine on company network behind proxy with automatically detected settings.
After a number of trials and failures the following workaround proved to be successful:
sharing my phone's wifi internet connection via USB
Best regards,
Robert
I found another way without setting proxy. I'm currently using an antivirus which has a firewall program. Then, I turn off this firewall and now I can fetch that URL.
If still doesn't work, try to turn off Firewall on your PC, such as Windows Firewall.