Is there a way to get the Alarm Application source code for customizing the existing default source code availble in Android 2.3.
You can download the app from the Android github mirror.
https://github.com/android/platform_packages_apps_alarmclock
Or on the cyanogen mirror
https://github.com/CyanogenMod/android_packages_apps_DeskClock
And because, you are a nice guy, you are wondering: What is the license of that code?
Glad you asked, because according to the Android documentation and cyanogen's wikipedia page, it's the Apache Software License 2.0
And as we all know, the Apache license 2.0 is a nice license for the all hackers. Even those who intend to make a buck or two. (you little capitalist scoundrels)
Please note that, I didn't come up with that nice cheat sheet. Someone else did.
This is the version that's made and maintained by Google now in a move to keep the apps unbundled from the system so as to provide the apps and updates to everyone even if the OEMs don't provide system update.
Hence It's the one that's available from the Play store to download too. The one that's shared previously is the stock App which is quite old.
https://android.googlesource.com/platform/packages/apps/DeskClock/
As the site of the source may keep changing, best way for you to figure it out is by visiting Android Open Source Project (AOSP) page and searching for the URL of the code.
You can download whole android source tree including alarm app from here:
http://source.android.com/source/downloading.html
Cyanogenmod is dead. So, here's the latest Lineage DeskClock (Apache License 2.0) repository:
https://github.com/LineageOS/android_packages_apps_DeskClock
Related
I want to add a custom OTA application to AOSP Settings placed in packages/apps/settings to manage updates in client side. I need to know how I can do this technically. If you know any opensource project or technical example, please refer to them.
I know how it is technically must be done, but I need a few live codes to learn it in practice.
I found the Updater package in Lineage OS project, and found it interesting. Anyone who wants to learn more about embedded OTA packages, is recommended to take a look at this package.
https://github.com/LineageOS/android_packages_apps_Updater
It can be easily integrated with AOSP project and has a standard structure of code.
I know that Flash has been abandoned on the Android platform. But for a special reason, I still need to use Flash (SWF file) on an application that is used internally. So, now is there a way to make my application play Flash(has ActionScript) without installing other APK?
The minimum version of the target device is Android 4.4 (API 19)
Thanks a lot.
I was investigating same thing recently. Adobe AIR seems to be able to do it so I was pretty sure it's possible. After quite a lot of googling I found some useful info and proof of concept on some Chinese website (unfortunately it's already down :( ).
Fortunately they also linked a Github repository with that example. I was able to fork it and add some instructions about which files do you need to update if you want to use latest AIR SDK or see flash traces.
So there you go. You can use SWF file in your Android app (on new Intent) through AIR-runtime, without installing other APK:
android-invoke-adobe-AIR
There's one problem tho. You can pass some parameters from Java to AS3, but I couldn't find easy way for communicating between them later on. In AIR you could do that via ANE's and I was trying to extract some APKs to see how it works, but no luck. I did end up using socket communication (it's on feature/SocketConnection branch).
Hope you find it usefull.
Okay, here's where I'm at. I used Eclipse to import the code for the SMS/MMS app that is on Android devices. The code on GitHub is at https://github.com/android/platform_packages_apps_mms.git. I used the Import -> Git in Eclipse. Got the code into the environment. Had to manually paste the AndroidManifest.xml file into the project, and also copy over source and resource directories.
Basically, I want to get the Eclipse project to a point where I can run it on my device and it behaves JUST like the built-in app. THEN, I can modify it for my specific needs hopefully. I don't want to have to write all the SMS/MMS functionality from scratch if I can avoid it.
NOW, the problem is: A LOT of unresolveds. I keep reading various places where people are saying that some of the packages aren't REALLY in the SDK and are internal... Why the heck call it an "open source platform" when the source isn't available for the built-in apps that Google provides?! (If this is in fact the case). Further, why would they provide the code on GitHub for the MMS app if in fact not all the code is available and you can't compile it? Seems a little ridiculous to me.
I have read some answers to previous posts where I was just sticking my "toes into the water" so to speak, and people are saying that a lot of these packages are part of the firmware? Seems like there should be some base code for a texting/mms app out there somewhere.
Anyone know of any? (Open source, free, SMS/MMS Android code that I can easily obtain and that don't suck, if in fact I can't use Google's code?)
Thanks,
John
Mms as well as other system apps use private or hidden APIs that are not available through the SDK.
This has nothing to do with not being an open source platform, as you mentioned, but with the fact that you are trying to build the application in a way that is not supported and nobody says it was.
If you want to modify and build Mms, do it as part of the firmware build, using make, not importing the project to be built by the SDK in Eclipse.
The stock MMS app built into a device's original firmware, signed with a private key, and is able to use some private API.
Third party apps can't use the private API for various reasons, one being security. All the source is open if you wish to view it.
You can definitely build your own firmware, or ROM, as some call it, and run your own modified MMS app on it.
I don't know if you can make and install your own MMS app. You can find out by looking through the Play Store for similar apps or looking at the Android developer documentation to see what permissions and API are provided to third party apps.
I want to modify the core applications like Settings.apk and install on my own android phone.I don't want to publish it on market. I have following doubts
Where can I get source code for core applications?
What are the things I need to do this?
Please tell me steps to do this.
You can get the source code here: https://android.googlesource.com
Keep in mind that the packages there might not be the ones on your phone as each vendor can provide a replacement of their own, the Camera for instance is almost never the google app.
You will also have to decide which version you want since each OS version has revisions that take advantage of newer API's etc.
As far as what you need pretty much the same thing you need to build android apps, eclipse, the sdk, tools etc. http://developer.android.com
You will of course have to remove the application from your phone before installing the new one since your signing certificate will not match. There can be difficulties when you swap out your own version so be sure to save the original.
I have 6 months experience with Android, developing simple UI-based applications. Now I want to write applications targeting the Android core Kernel. For example, I want to develop a framework which is not present in Android. To achieve that, we have to write the code for the Kernel. I don't know where and how to start Android Kernel programming.
If anybody knows the way to start it please help me.
xda-developersA very awesome and very active place for anything smart smart phone related.
kernelnewbies
Generally good resource for starting out learning linux kernel(Which is what the android is built off of)
Building Android KernelAndroid Kernel Source
Linux kernel Online guide to driver development among many other related topics.
Update
For android source code you can check out one of the following...
or this question
or source.android.com
I personally dig this chrome plugin for browsing android source code.
If you are talking about platform level programming,i.e. framework extensions, native libraries and services there are a few places to start.
The first one is the new and updated official open source project page. The portions about contributing and porting provide some basic information on the platform architecture and what you need to work with the platform. The next step is to understand the build system for the platform and framework. There are some limited info available on the net if you google for it. The best way is probably to study some of the makefile templates available in the open source project in the build folder. For info on how to add your own modules using Android.mk files it is a good thing to study make files for existing projects such as the ones available in external in the open source projects.
Once you have gotten as far as the above. That is you know the basics of platform level development and how to build your own modules for the platform the next step is to study the framework extension example available in the open source project. Check out the vendor/sample/PlatformLibrary folder (edit, as of 2.2 the vendor stuff has moved to the device folder) in the open source project and read the readme file, study the code, build it and make sure you understand it. If you don't then JNI, shared libraries, the platform security model and the core framework are areas that could help you out.
I guess that since you are talking about kernel programming you are also looking for ways to hook up new hardware with the platform and expose that functionality using your framework extensions to the applications. Hardware is basically added as a standard Linux driver so getting it to work under Linux is a good first step. How to hook it into the Android framework after that depends on what type of hardware it is. You could either use a native process to control it (compare the camera service or radio daemon in the current platform) or just spawn a thread in the application that uses your framework extension. For hardware that does not require that much attention plugging it in using an Android HAL library could also be an option.
I hope that provides some initial pointers on where to look. The official mailing lists are otherwise the main source of info about platform level development. Especially Android porting and Android platform.
You should also check out http://pdk.android.com. I just found this site recently and it is extremely useful. I wish I knew about it sooner. I'm not sure how dedicated Google is to updating the site because as BMB mentioned the vendor stuff was moved to the device folder in 2.2 but there have been no changes to the PDK site to reflect that. Also, some of the links don't work but I was able to find all the pages by doing a site search in Google.
The best and very first place to start would be Google’s documentation on android
https://source.android.com/docs/core/architecture/kernel
Then kernel building
https://source.android.com/docs/setup/build/building-kernels
Xda isn’t so great for kernel creation but is good for kernel modification and backporting. Mostly what they do there is provide newer versions of android to older phones rom modification and changing the battery animation in the boot.img
Google also goes over the development of new things for an existing kernel.
It’s best to start at the begining,
Personally I started at xda and went backwards which took WAY longer and just complicated my setup process.