I've built an Android app in the past (on a Windows machine using Eclipse), but having downloaded Ubuntu, the Android source and built it successfully (whew), I'm not sure how to tie it all together. How do I load my app into the Android that I've built?
If you really want to be building your own ROM you should head over to the Android Platform Developer's Guide and read it all through.
However if you simply want to develop your own applications then you only need the SDK (and on rare occasions when you want to add some native code also the NDK).
The easiest way to develop Android applications is by utilizing the Eclipse integration, which does most of the work for you.
You also probably want to know what all of the SDK tools (even if you are building your custom ROM) that the Eclipse plugin is using behind the scenes do, so head over to the Tools Overview.
You may want to take a look at the Android Cookbook.
It has loads of nice wee snippets of code to get you started.
Related
I wanted to enable one of my Android project to the new KMM but will deploy only for Android platform for the time being. According to this FAQ page it seems that the plugin works only for macOS. But was confused on the next paragraph stating
The good news is that you can work with cross-platform projects on
Android even without the Kotlin Multiplatform Mobile plugin. If you
are going to work with shared code or Android-specific code, you can
work on any operating system supported by Android Studio.
I am not planning yet to run the iOS part as I am still learning it, all I want for now is to prepare my project so when I am confident with my iOS skill starting it would be easy. I do not have a good Mac device as of now that is why I prefer to use my Windows machine for now which is more reliable for heavy stuff like Android development.
I just found the right place and reference and it is possible according to this documentation
I am using Visual Studio 2015. I am trying to follow the basic tutorial of Xamarin from here
https://developer.xamarin.com/guides/xamarin-forms/getting-started/hello-xamarin-forms/quickstart/
When I get to the build part, I get problems, some of which because I don't have a Mac connected.
I only want to try things for now, and don't have any need for my app to work, or even compile for iOS, but still I want it to be written in Xamarin forms, just to learn how it works.
For Android, everything seems to compile, and my only physical device runs Android.
I would like to disable iOS and Windows build, and only remain with Android, and play around with that, and only later busy myself with Windows and iOS trouble.
How can I remain with only the portable and Android parts?
In VS and XS, you can right-click on a project in the solution and choose to either Unload or Delete. Unload is temporary, Delete is permanent.
As a management requirement our company needs to use Intel XDK AND to use a specific 3rd party Android/iOS SKD within the app.
Is that even possible? If yes, specifically how can I achieve that? What are the steps?
Well, it depends a bit on what you mean by using a third party SDK. If you mean using their editor to create your HTML/JS/CSS code, then yes, it's no problem. If you're talking about using Android Studio or something similar to write Java code and XML files required for Android apps, then it doesn't really make sense.
To use another editor, you would simply edit the files with the editor of your choice, then use the XDK to test/debug/build. The XDK should recognize changes that occur outside the provided editing tools.
The XDK is designed so that basically all the code you provide is HTML/JS/CSS, and the XDK build will generate the platform specific wrapper to run as an app on Android, IOS or Windows, so you don't really do the kind of stuff that an Android or IOS specific SDK would do.
One other thing, you might find some use with other tools to do debugging. XDK has some debugging and test facilities, but there's no reason you couldn't use other tools as well, possibly including other SDKs, so that might make sense as well.
Okay, here's the situation:
I'm developing an application for a client (or trying to do so). It requires much (if not all) of the same functionality as the built-in SMS/MMS application. So, I thought - HEY! Android is open source right? I can take the application and modify to my needs, right?
So, I found the code on github for the MMS/SMS application (for some reason, based on the AndroidManifest file, it calls my project I built, "ConversationList"). But I get TONS of errors involving the import com.google.android.mms.* package and a couple other packages.
Everyone keeps saying "it's a private/internal package", and "download the entire AOSP". But, HOW do I do this on Windows, and WHY can't I just download the appropriate packages to use in the program?
ALL I want to do is build a project in Eclipse deploy it to my phone, and then modify the necessary code. If Android is open source, why so many secret/internal packages? This is frustrating.
Any advice?
So, I found the code on github for the MMS/SMS application (for some reason, based on the AndroidManifest file, it calls my project I built, "ConversationList"). But I get TONS of errors involving the import com.google.android.mms.* package and a couple other packages.
AOSP applications like this are designed to be built as part of a firmware image, not as standalone apps.
But, HOW do I do this on Windows
Most likely, you don't. Cygwin might work. More likely, you will need to use OS X or Linux, such as running Linux in VirtualBox. And the result of your build will not run on anything, except as part of a firmware build that you use to replace the firmware on a device.
WHY can't I just download the appropriate packages to use in the program?
Because that application is designed to be built as part of a firmware image, not as a standalone app.
ALL I want to do is build a project in Eclipse deploy it to my phone, and then modify the necessary code.
Then find a project that is designed to be built as a standalone app as your starting point. Or, work on modifying the project you are trying to use to work as a standalone app, by ripping out all the functionality that depends upon things that are not in the app itself.
If Android is open source, why so many secret/internal packages?
They are not "secret". They are part of the firmware.
For example -- since you appear to be familiar with Windows -- it is entirely possible that "apps" like Control Panel are not designed to be built independently from the Windows OS. If you were able to download the source code to Windows and tried to load Control Panel into Visual Studio, it is eminently possible that you could not create some standalone CPANEL.EXE file just via that one project. Rather, you would need to use a customized Windows OS build process to build the whole OS, which would then contain a CPANEL.EXE that would run within that built version of the OS.
Most of the AOSP apps work this way. Some have been forked to create standalone apps -- K-9 Mail came from the early version of the AOSP email app. I have no idea if anyone has done this with the stock AOSP Messaging app or not.
You could instead fork TextSecure[0] as it is no system application but looks very similar to the stock messaging application. The AOSP application needs to be installed on /system/app which requires root and might not be what your customer wants.
Please note that this application is copylefted (GPLv3) so you'd have to give your client access to the source code under the terms of the GPL if you fork.
[0] https://github.com/WhisperSystems/TextSecure
OK, possible stupid question - apologies - but can you install the SDK and Eclipse on an Android device (I'm thinking a tablet)?
I realise it will be trickier to use without a proper keyboard etc...
There is currently no way to do this on an android tablet. Although there is an app on the market called "Java Code Viewer" by Ahyane that will allow you to open java code, view and edit it on an android device. The app does read syntax, however sdk and library support are not part of the apps current functions.
I use it occasionally to tinker with some source code while I am thinking about it and then run it on eclipse when I am home.