How to debug / step through an android application without using eclipse - android

Lately i've had issues with ADT14/15 and their eclipse integration for debugging/building/cleaning android apps. However using ant and a build.xml file is working flawlessly.
Does anyone have a suggestion for how i might control the eclipse debugger from ant? Ideally i'd like to add a custom ant task that i can launch from within eclipse (ant build) that would initiate a debug session between eclipse and adb so i can step through the code using eclipse without relying on adt.

I've found that even though ADT 14/15/16 are unable to build and debug my project because of various errors like.. unable to find blah.apk etc. If you use ant to build just make sure you build a debug version and install it to your phone. Then run DDMS from within eclipse. Select your process and click the green bug icon. This will enable debugging and allow step thru of your code in eclipse.

Related

Unable to Build and Run Unity VR project for Daydream on phone and having hard time debugging the application

Although I’m able to run the apk on phone, but whenever I try to build and run my project directly from Unity on phone, it doesn’t work. This is the error message it shows:
On checking the console, these are the messages it shows:
But I'm pretty sure my path is correct, I checked it multiple times. Also, the APKs are building and working fine. Let me know how can I Build and Run from Unity as I'm not able to debug the applications.
This seems to be a known issue that is solved by downgrading the Android SDK tools to an older version as reported here.
I am just going to re-narrate the steps in the link I shared above for convenience as follows:
Go to Android Studio website.
Scroll down to the end of the page and download the command line tools from the section titled as "Get just the command line tools"
In your computer, go to $AndroidSDKHome$ and rename the tools folder to tools.bak
Extract the contents of zip file that you downloaded to the $AndroidSDKHome$. This basically will replace your SDK tools folder with a downgraded version.

Visual Studio 2015 Xamarin deploy fail without any error message

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.

Cannot debug android native code built on android library on eclipse

I have been struggling with this for 3 days and I could not get it done.
I have an android project that links to an android library, containing native code, on eclipse.
I saw this question, which is the same schema as mine, but the steps proposed there would not work.
I rewrite the steps here, which are:
Go to "Run" menu-> "Debug Configurations"
Under "Android Native Application" in the left pane, select your application
Under the "Debugger" tab click "Add..." in the "Shared Libraries" section.
Browse to your android library project directory and add its subdirectory obj/local/armeabi.
Apply and debug.
First problem was, I could not set up Debug config for native app if the application is not set up as native, (only links to a native app), so I cannot select any project to debug.
I tried setting the android app project as having c/c++ nature, with dummy jni/Android.mk, as just not showing any error on build. (I doubt this is the right way to go, though)
The app then runs and links correctly, and I am able to follow those steps --1 to 5. But as I debug it, the console shows (BasicCharacterWithLib is the name of the app):
[2014-05-27 12:18:09 - BasicCharacterWithLib] Error while obtaining file from device
[2014-05-27 12:18:09 - BasicCharacterWithLib] com.android.ddmlib.SyncException: Writing local file failed!
And it would never stop on any breakpoint (native or not)
I am also aware of this other question, having the same symptoms on a different configuration (directly executing an app), but it remains unanswered.
I have successfully debugged another app in the same device, a test app having native code inside it, so I guess the problem cannot be due to the device config.
Do you know how to solve it?
some further details:
I use eclipse from adt bundle (version v22.6.2, sdk highest api level available is 19 and ndk version is r9)
The app runs on more than one thread (executed from java via AsyncTask), but at that point only the main thread is initiated.
The debugging process does work only in the java side if I debug it as an android app, even in multithread.
I have set APP_PLATFORM as android-14 in Application.mk, same as minSdkVersion="14" in manifest.
I also tried restarting eclipse, rebooting the device, and unplugging and plugging the USB again.
See this question. Likely it could be the same issue of the obj/local/armeabi folder not existing on disk.

Cannot create APK file using Marmalade

I'm using VS2012 and I'm trying to build my application for Android, but APK file is not created when I build the application.
I'm doing this process using the Marmalade Hub and the "Package, Install and Run" option. Build process works fine and I get no errores, but when I process on the "Package, Install and Run" button I get the following message:
Please Build before deploying. To build, click "Build" or click "Open in IDE" and build GCC ARM Debug.
The following picture shows this process:
Picture
Please help, I cannot advance on my project because of this situation!
Thanks!
You're doing it wrong. The build process has to be in the IDE, not in the HUB. Open the project in IDE(VS2012 in your case) by either clicking Open in IDE button in Hub or double clicking the Mkb file. Build and run your code in x86 first to create the necessary bin files for groups and then build it using GCC release compiler. After that you can either run it using GCC compiler to open the deploy tool(default action for VS2010 and VS2012 desktop version) or running deploy tool from external tools (VS2012 for windows phone) or by running the deploy tool target (in XCode) directly. You can instead use package, install and run button in the hub if you've already filled the neccessary info deploy tool asked you.
Honestly I don't have trust on Hub and like to do the development using old school method with IDE and deploy tool. It always works.
I found the problem on the HUB that wasn't allowing me to run the "Package, Install and Run" process. For that matter, the actual problem was in the Package part of the process.
For some reason, when you use VS2012 to develop and you haven't installed Windows Phone for VS2012, the default option for the HUB is to check for "Windows Phone 8 C++ Development" tool installation and if not present, block Package build for Android. I also note that I'm using Windows 7, so I cannot install Windows Phone for 2012 module.
The solution I found was to simply configure Marmalade Hub correctly:
Open Marmalade Hub.
Press on Dependency Checker.
Depency Checker should start with the IDE's and Compilers tab opened. If not, open IDE's and Compilers tab.
Look for Windows Phone 8 C++ Development on the tab.
Choose "Work Without IDE" on the options.
Try to build the project again.
Best!

Creating Android App builds

How do I create Android app builds similar to Windows code builds? I have my Android app code base checked in to Tortoise SVN. But I also have the binaries checked in - i.e the apk file etc. and not just the source code. Everytime there is a change I am building it manually on Eclipse and then updating the apk and the code folders. Is there no mechanism to create builds like on Windows where you run a batch file running the visual studio exe to create builds and binaries. I need this because otherwise it s just replacing the apk's everytime. Its very frustrating that I dont know this simple detail so please help!
You can use ant building scripts (details at http://developer.android.com/guide/developing/building/building-cmdline.html).
Actually you have to just checkin your project to SVN. The other team member or even you when loading it in another working space (another PC or diff Eclipse WorkSpace), Eclipse will throw error.
Simply clean the project it should rebuild the app and APK files for you again. Nothing much to worry. Me and my friends have done it several times.
Correct me if I'm wrong.

Categories

Resources