{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
These tools require varying levels of experience and if you've never touched code before, you might want to check out guides about java(needed for android development) here. First However if you're ready to move from theory and syntax to actual development, here's what you'll need.
The Android Software Development Kit (or SDK)
The Android Software Development Kit (SDK) is actually a collection of tools that will help you make Android apps. There's more outside the SDK that we'll discuss, but here are some of the most helpful tools in the SDK:
Eclipse/Android Studio
There are two primary integrated development environments (IDE) for Android. An IDE is the main program where you'll write code and put your app together. It can help you organize and edit the various files in your app, manage the packages and supporting libraries you app will need, and test it out on real devices or emulators.
The default IDE for Android is Eclipse. Eclipse allows you to modify Java and XML files and organize the various pieces of your application, among many other tasks. The version you get from Google also includes a package manager that allows you to update to the latest version of Android tools as soon as Google releases them.
The main alternative is Android Studio, which is currently being made directly by Google. Like many Google projects, Android Studio is part of a prolonged beta. The long-term intention is for Android Studio to replace Eclipse as the primary IDE for Android development. That doesn't necessarily mean it's for everyone. For example, if you need to make use of the Native Development Kit for apps like games (hint: if you need it, you probably already know you need it), Eclipse is mandatory. However, Android Studio is a good option if you want to get a jump start on the future, and you're willing to tolerate some possible bugs.
No matter which IDE you choose, using it is a bit like Photoshop: it can do a ton of cool things, but you'll probably only learn the individual tools as you need them. However, this is also a good place to get started on some of the basics of Android development. Here are some great tutorials and resources to get you started:
Udacity - Developing Android Apps: This 8-week online class has a good amount of free elements, taught directly by Google engineers. The course won't just copy-paste code, but it will help you learn some of the core concepts and features you'll need.
Android Developer Training: Part of Google's documentation includes training tutorials on how to use its tools. These documents will walk you through basic features of the IDE. If you don't have much experience developing applications, this might not turn you into a master dev, but it will help you learn the tools.
Vogella: It's worth mentioning Vogella tutorials in just about every section here. This massive set of tutorials covers just about everything you could cover. If you have a basic question not covered above, check Vogella.
ADB
ADB, this tool's primary purpose is actually to aid in development. As such, it's included in the Android SDK. You can use this to load software or make changes to your devices when it's plugged into your computer. Here are some of the basic tools you can use with ADB, but if you want to learn more as a developer, check these out:
[LIST=1]
[*]ADB Documentation: This is the primary resource from Google on what ADB is and how it works. You can find most of what ADB is capable of here.
[*]Vogella - Using the Android Debug Bridge: Another Vogella tutorial, this one covers the basics of how ADB works and some of the common things you can do with it. If you don't want to dig through Google's documentation for the one command you need, this might be a good place to start.[/LIST]
Android Developer Guidelines
We've already linked to a couple of resources from the official Android Developer Guidelines so far, which only proves how useful they are. Google maintains a vast, extensive collection of documentation and resources for how to program your apps that you can reference or search through.
If you're brand new to Android development, it can't hurt to browse through some of the tutorials and guides here. They're laid out in such a way that one lends into another (see the Android Developer Training above). Here are some sections that are worth brushing up on if you're getting started:
Google Services : Google offers a wide variety of features that you might otherwise have to build out yourself like map and location features, cloud backups, sign-in services and more. You can check them all out here.
API Guides: Google services are set apart from the regular APIs, which you can also read about here. These range from code to create basic animations, to reading sensors and connecting to the internet. There's tons of info here to add functionality to your app.
Sample Code: Sometimes it helps to see how someone else did it before you. This section shows you samples of code for various functions. This can help you see how something works, or just use it in your app so you don't have to reinvent the wheel.
Android Design Guidelines
The counterpart to the developer guidelines is the Design Guidelines. Google is focusing increasingly on teaching its developers how to make apps that not only work well but look good. As such, that means a lot of the work has been done for you to cover the basics like buttons, simple animations, and whatnot.
The place to go to get more info on this is the Android Design Guidelines, which are a second major subsection of Google's official documentation. Keep in mind that these are here for people who may not have a great grasp on visual design as it relates to creating application interfaces. In other words, if you already know what your app is going to look like, you might not need this. If you already know what you're app looks like but you're not good at making apps look good, check this out.
Here are a list of some the helpful areas to start:
Devices: Android targets more than just phones. This section will help you learn how phones, tablets, TVs, and watches all relate and how you can design an interface that adapts to all of them.
Patterns: Android is built on structured interfaces. This section teaches the building blocks of how apps work so you can design the framework that you'll be building your design on top of.
Material Design Documentation: This is technically a separate section for now, but Google's newest version of Android will introduce a new type of design language called Material Design. Here you can peruse what that means and how to think about designing apps that fit these guidelines. It's also helpful if you're not experienced with thinking about how users interact with apps, even if you don't follow the specific recommendations.
GitHub/BitBucket
While you're developing an app, there are a lot of files to manage and you'll need a way to track changes. Git is one of the most commonly used protocols to manage new versions or changes to existing software. Necessarily, it's a little more complicated than a basic backup tool. It's flexible enough to allow you to manage multiple different branches of your app as well as pull from older versions if something goes wrong.
Two of the most common services for managing projects with Git are Github and Bitbucket. Both use the same underlying protocol and can be integrated directly into either Eclipse or Android Studio. BitBucket allows you to have some private repositories (read: storage for projects) without paying money, while GitHub's free offerings require them to be publicly listed unless you pay a little extra. Here are some resources that can help you get started with Git:
BitBucket Tutorials: Atlassian, the maker of BitBucket, have a series of guides on how to get started with BitBucket and import your projects here. In my personal experience setting up both BitBucket and GitHub, this service and these guides were much easier for the uninitiated to get started with.
GitHub Guides: GitHub similarly has some tutorials on how to set up its service that you can find here. Some of the guides refer to older versions of the software in some cases, but generally you should be able to get up and running with these.
Vogella Git Tutoriall: Vogella has yet another great tutorial here explaining what Git itself is and how it can help you manage your entire project. While version management is Git's primary function, there's a lot more here that Vogella can walk you through.
Developing for Android is far more than just putting Java in a text editor. If you have a little bit of experience with writing code but haven't dived head first into actual app development yet, there's a lot you may not be aware you need to know just yet. The good news is, you're not the first person to go down this road. These are just some of the tools you need and hopefully these guides will put you on the right path.
If I Helped You,Press Thnx Insted Of Commenting...
and what about NDK?
fast toggles said:
and what about NDK?
Click to expand...
Click to collapse
Thnx for rply
I thought that it was for new peoples,once they will familiar with basic,will go to such level.
But you can provide me some links to add them here.
fast toggles said:
and what about NDK?
Click to expand...
Click to collapse
What is the point of using NDK?? I think it is important only if you want make games with c++ on Android??
Otherwise is there any point of using it ??
Thanks in advance
I think you might also added some links to learn Java programming first because who want to learn android must learn java first and have a good background with it as android is written by Java.
I think this free series on youtube will be useful for beginners to learn java:
https://www.youtube.com/playlist?list=PLFE2CE09D83EE3E28
Related
Source : Ubuntu Mobile
Ubuntu Mobile is an Ubuntu edition that targets an exciting new class of computers called Mobile Internet Devices. Ubuntu Mobile, based on the world’s most popular Linux distribution, and MID hardware from OEMs and ODMs, are redefining what can be done in mobile computing.
Ubuntu Mobile, a fully open source project, gives full Internet, with no compromise. Custom options may include licensed codecs and popular third-party applications.* Full Web 2.0/AJAX fidelity, with custom options of Adobe Flash®, Java, and more
* Outstanding media playback so you can enjoy videos, music and photos with superior quality and easy navigation
* A suite of applications that work seamlessly to meet every need of a digital parent, student or anyone who is on-the-go
* Facebook®, MySpace®, YouTube®, Dailymotion®, 3D games, GPS, maps, in short, the full Web 2.0 experience delivered into your hands as a compact and powerful device that’s easy and fun to useThe product of Canonical collaboration with Intel® and the open source community, Ubuntu Mobile is the software that makes it all possible.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Ubuntu Mobile just works, and it works just right.
Just the right applications provide an uncompromised Web 2.0 experience: Web browsing, email, media, camera, VoIP, instant messaging, GPS, blogging, digital TV, games, contacts, dates/calendar, simple software updates… and lots more.
All unnecessary complexity in the user experience is eliminated.
Ubuntu Mobile is finger friendly, with no stylus needed. You drive Ubuntu Mobile with touch. Simply tap the screen or drag a finger to make gestures for intuitive navigation and control.* Tap an application with your finger to launch it, and tap menus and buttons to use them.
* Swipe a web page to pan up, down or sideways.
* Swipe a video, photo, song or thumbnail page to move to the next or the previous one.MIDs typically have the following features and attributes:* Small size/form factor
* 4 to 7 inch touch screen
* Physical and/or virtual keyboard
* Wi-Fi, 3G, Bluetooth, GPS, WiMAX
* 2GB to 8GB Flash or disk storage, 256MB+ memory/512MB+ recommended
* OpenGL 3D
* USB, camera, head phone jack, speakers, microphoneClutter User Interface
Flash User Interface
Ubuntu Mobile is highly flexible and customizable. It is an ideal platform for the kind of product differentiation that reaches target users and penetrates key markets.* User interface in HTML, Flash, Clutter, Python with GTK, C/C++ with GTK and Java
* Different application sets for different products or configurations
* Integration with popular Web 2.0 sites
* Internationalization and translation support to meet market requirements
* Custom sets of licensed media codecs and third-party proprietary software for commercial partners
* Custom engineeringOEMs, ODMs, operators and developers can customize Ubuntu Mobile to their desired look and feel and offer just the right capabilities to meet their specific requirements. Canonical can assist through its Custom Engineering program.
For information about Canonical custom engineering services, email [email protected].
Community
The Ubuntu Mobile community includes many individuals and organizations and always welcomes new participants and partners.
Places to get started:
Wiki Ubuntu Mobile
Intel’s MID Linux Moblin project
Shame it's not for Pocket PC's though.
No. But I am guessing it might be good for devices like HTC Shift which can run XP/vista
It looks beautiful, wish we could run it on our devices. I've never wanted an OS on my phone as bad as I want this
aksd said:
It looks beautiful, wish we could run it on our devices. I've never wanted an OS on my phone as bad as I want this
Click to expand...
Click to collapse
Agreed.
Not being a developer myself, I'm not sure if it's possible to port this or tweak it to be compatible with our devices. Can someone shed some light on this subject for us?
This is definiteley something i want more bad than a private moment with Pamela Anderson
troyk said:
This is definiteley something i want more bad than a private moment with Pamela Anderson
Click to expand...
Click to collapse
Well, ANYthing is preferable than a bad case of genital herpes...
It's probably not too hard to port, given that it's a Linux distro. I'd be willing to bet it could be trimmed down, have all the unnecessary (or too-large) stuff removed.
And for particular devices, you could search for the open-source Android repository for the device's chipset, which contains the low-level hardware routines and references..
Just copy/port over the low-level routines into the Ubuntu implementation, recompile, and voilà! The only limitations I can think of would be A) not enough memory available to do all the cool UI stuff, and B) some hardware routines missing/not yet implemented from the Android repository, or even just a general lack of hardware documentation..
I'm tempted to try messing with it myself, if I can figure out how to emulate the firmware image on my computer.
-W5i2
Well, Ubuntu MID is developed for ARM processors. I have iPaq 2490 which is based on this processor, and considering that CF 8GB cards are no luxury today... this actually might be possible to pull
Android is based on the Linux kernel, so yes Linux *can* run on our phones. It's a case of getting it to all work first, and THEN start adding the bells and whistles.
I've used Ubuntu on my desktops before now, so this caught my attention. I'll have a read into it later tonight.
Well I've got a intel atom based mobo which I'm eventually going to stuff into some car. I've already looked at it, and for such an early release it was pretty good. I couldn't get the clutter UI to work at all though which was kind of a bummer; I guess I'll give it another try in a few days.
Have someone try to port ubuntu mobile on any phone?
Great work man .......
ipaq 2490
MeanEYE said:
Well, Ubuntu MID is developed for ARM processors. I have iPaq 2490 which is based on this processor, and considering that CF 8GB cards are no luxury today... this actually might be possible to pull
Click to expand...
Click to collapse
Any luck porting Ubuntu Mobile to your ipaq 2490?
weasel5i2 said:
It's probably not too hard to port, given that it's a Linux distro. I'd be willing to bet it could be trimmed down, have all the unnecessary (or too-large) stuff removed.
And for particular devices, you could search for the open-source Android repository for the device's chipset, which contains the low-level hardware routines and references..
Just copy/port over the low-level routines into the Ubuntu implementation, recompile, and voilà! The only limitations I can think of would be A) not enough memory available to do all the cool UI stuff, and B) some hardware routines missing/not yet implemented from the Android repository, or even just a general lack of hardware documentation..
I'm tempted to try messing with it myself, if I can figure out how to emulate the firmware image on my computer.
-W5i2
Click to expand...
Click to collapse
Respect For still Having A G1
I have a bit of a disclaimer to start things off:
This isn't college or your mom's kitchen. No one will help you make your project. So don't ask to get help with your project.
This is more of a "Teach a person to fish, and they will eat for a lifetime" kind of thing.
Please read and understand before posting/responding.
Please stay on topic.
I'm actually expecting a focused, constructive conversation.
Hello SGS4G Users,
I'm starting a conversation with other Recognized Developers about a mentoring project. I'm still waiting on comments, but I figured I could set the stage and get user feedback in parallel.
I know a lot of people want to dev, but let me be frank, it's not for everyone.
This conversation is for Senior Members that are interested in learning to develop roms and/or kernels. Preferably, you've already done a bit of rom development or kernel building, but just need to be thrown into the lake. Then keep reading. If this works, you can come over to my house, and I will litterally throw you in the lake! Then you can throw me in! LOL
We now have a really great resource called XDA-University. So this mentoring project is a short term bridge to gap the learning curve between new developers, and a member that could apply for RD - based on the education that can be provided by XDA-University.
One of the goals is to mentor you to be self sufficient in learning how to dev and find resources for yourself. It's easy for someone to say "Just google it" (s/google/do/ lol), but it's harder to show where I look for help and to show a development workflow, when the resources are not found on XDA-University.
The other goal is to take these learning lessons and update XDA-University. When users are able to go to XDA-University and learn everything they need to come at this from scratch or from different skill levels, then this mentoring project should go away, unless it just becomes embedded in the community and... well.. that would be fantastic!
What I am looking for from you
I would like to know what you think about a project like this?
For those interested, tell me what languages or tools you know: c, c++, java, objective-c, perl, python, gnu/make, apache ant, etc...
Learning to use linux is prefered, but you can dev on windows or mac os x, too. It's just easier on linux. Do you know linux (like you can type commands into the shell and have some basic shell understanding)
What do you currently think of XDA-University? If you have any changes, what would it be?
Thanks!
Interesting idea Brian. I used to be huge in coding and could write in any language, but it's been a long while since I had to do that, but I understand programming, which is the key part. Syntax is syntax, but understanding and tracing code and knowing what is happening in the code is, to me anyways, the base of all programming.
I've been playing with that BBQLinux you mentioned in another thread and seems to have all the java, Android SDK, adb, etc, all installed already, which is the half the battle of getting everything setup properly, especially with Ubuntu going with a different java now and to get a better java for android and not get all kinds of warning, you have to jump through hoops.
For myself, I'd be interested once I have BBQ compiling something (not there yet, but learning in my spare time), I'd like to get into porting ROMS, and knowing what usually needs to be either fixed, replaced, copied over, etc, from the SGS4G to another ROM to get it to work with our devices would be one of my goals.
Hi Bryan
Brilliant idea. I practice windows .NET QA at work today, but it's been like 10 years since I last developed anything on C language.
I do however relate to what getochkn said about understanding coding and architecture as a way of thinking.
I own an Ubuntu VM (with Netbeans) and an OSX VM (with Xcode) and I did practiced some sudo, get-apt sheet in the last few months, so I assume I will get along with that stuff.
I have been mastering the decompiling, theming, translating, re-compiling methods, as well as customizing updater scripts and Aroma installations for the last 18 months.
Actually today I start a a course for a Diploma in Android and Iphone development. During this class I will study Java, Android SDK and objective C and have a final project making an industrial application.
It should take 13 months to finish.
So definitely I will be more equipped at that point.
So yes, I am very much into it, but not sure if I should start right away or blend into with time.
2 more things I would like to add :
1) I want to thank you for your never-stopping effort and support (I know it's not easy having life, work and family in the background). and I bless you for this initiative.
2) I have absolutely no intention to replace the SGS4G in the future as long as it 's still working (and I have 2 devices).
sent from me
+1 on itz's thoughts/thanks...
i so like this idea... Im down to help or learn on whatever possible.
I'm up for it. I currently study computer engineering. I have some knowledge in C++, but mostly code on Java, did a simple Android app a few months ago and I know how to compile and decompile them, I'm familiarized with Ubuntu since it's what I use in the computer science class, but just to use Eclipse. I haven't coded too much Linux.
Recently, I started ROM zipping and although I will soon get another phone, I would like to learn and understand a bit of what you guys do in here.
Ok.I think this looks amazing, for even a beginner(with basic understanding). I have not done much since back in DOS LOL. Being in my mid forties with no schooling for coding or programing, I am still interested in the idea of being able to learn more than running simple scripts, (if only to end up borking my own phone). Looking forward to using these provided resources,and maybe getting out of some devs hair lol.
Sent from my SGH-T959W using xda premium
sooo bryan whats next
dsexton702 said:
sooo bryan whats next
Click to expand...
Click to collapse
Well, this is the beginning.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I want people to go to http://xda-university.com/ and start learning.
Also check out the XDA-University subforum in the general forum.
If you get hung up on something or have questions. Post here.
I'm tired of theorizing this crap. Lets make it happen!
OK, finished the "As A User" part, starting the "As A Developer"...
Themers and compilers might find these helpful :
1. How to localize a ROM - by me... (basis for theming/translating). Tip : use the latest APKTOOL.
2. Permissions Lexicon by exynoss - important for zip installers.
3. Bootanimation is simply a set of sequenced images. The most important thing is that it should be in STORAGE zip mode.
4. Download an Aroma installation ROM and explore the updater-script and aroma-config files and you'll get the hang of it... (on HebMIUI you can even see multiple language installation).
This seems awesome thanks
Sent from my SGH-T959V using Tapatalk 2
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Monitordroid allows you to remotely access and manage multiple Android devices from a web browser anytime, anywhere. No rooting required.
We are proud to announce that Monitordroid is finally out of beta!
Our code is open source. You can find it here: https://github.com/tyler124
We appreciate all open source contributions. Thank you in advance. Please contact [email protected] about any open source questions.
Our website: https://www.monitordroid.com
Current Features
Monitordroid is versatile and can be used for a variety of purposes including
1. Remote Administration of your own devices.
2. Theft protection for your devices.
3. Parental Control software for monitoring children which you have legal custody of and are under age 18.
4. Employee tracking software for company owned devices.
How it works
Sign up for an account on our website
Download the Monitordroid app onto the device from the Play Store. You can find it by clicking here
Login to your account to start managing your devices. Please remember to send us your suggestions, comments, and questions.
Video
Screenshots
How we started:
We noticed a while back that there was a lack of quality software available that allowed users to remotely access and manage multiple Android devices.
There are great apps such as Mobizen and Airdroid available, but they are mostly designed only to support a single device and are always running in the background, creating an obvious icon in the device’s notification bar and running up battery and data use. Then there is software like mSpy and WebWatcher, which have expensive monthly subscriptions, are unstable, and don’t create a real time connection with the device. They don’t give the control that users want.
So we set out to create Monitordroid, a dedicated commercial-grade remote access and management tool for Android.
The software is also open source and capable of being used completely free of charge if you are able to set up a web server and have a little experience with Android programming.
Monitordroid is designed from the ground up to be fundamentally different than any other remote administration software for Android. It does not use sockets, SMS, or XMPP to send commands to devices, all of which have been proven unstable or slow.
The software was developed from the very beginning to be incredibly stable and crash-resistant, so that once you install it on a device you never have to worry about doing so again.
Monitordroid is designed in a way that it is only run on the mobile device when a user sends it commands through the web application. For this reason, network usage and battery consumption are nearly non-existent.
Free Open-Source Installation:
To use Monitordroid free of charge, you're going to have to have your own server with PHP 5.0+ and MySQL. If you want to run Monitordroid on your local machine, software like XAMPP will work fine. After that, you can download the source code and make a few small modifications to configure the mobile application to connect to your server. Read more detailed instructions on how to setup your own (free) server in the readme.md file at:
https://github.com/tyler124/Monitordroid-Web-Application
When your server is ready, you can follow the instructions in the readme.md file for setting up the mobile app at:
https://github.com/tyler124/Monitordroid
Monitordroid on the Play Store: https://play.google.com/store/apps/details?id=com.monitordroid.app&hl=en
Visit our website: https://www.monitordroid.com
thanks bro :fingers-crossed:
This is awesome! Will use this :good:
How do i get the app or install this?
Sent from my VS980 4G using XDA Premium 4 mobile app
not available for my "Nexus 7" (It is really a Kindle Fire with a build.prop MOD), can I download an apk from somewhere?
Any plans on screen casting?
Or it's not even possible
app is on play store
Monitordroid 1.1 APK can be found at:
http://www.monitordroid.com/apk/Monitordroid11.apk
or
http://bit.ly/1BEyivF
Allen Hu said:
Any plans on screen casting?
Or it's not even possible
Click to expand...
Click to collapse
Afraid any features like screenshots or screencasting would require having a rooted device, which I'm not actively developing towards.
If anyone wants to contribute root-only features to the source though... :good:
Is there a limit on the number of devices that you can register to one account?
EDIT: also, there is a fine line between being useful and being useful to the point of being considered malware. DenDroid and other RAT applications have gotten huge amounts of bad press recently becuase of the functionality that they posess and the possibility of being installed without users knowledge by being packaged in other applications.
Do you have any plans in place to stop your application getting a bad name for itself? Or to stop it from being used for these kinds of purposes?
Perhaps by enforcing a manual registration process on the phone itself.
(I just want to make clear I am not, in any way, accusing this application of any sort of nefarious tasks)
EDIT2: I found the answer to my first question in your FAQ.
How many devices can I control with a single Monitordroid account?
During beta testing, Monitordroid limits users to a total of 10 devices per account. In the future, new accounts will most likely be limited to 5 devices at first, with the option to purchase more. In that case, customers who purchase in beta will still retain their 10 device maximum.
Click to expand...
Click to collapse
re monitoroid
Love to play with this, can it be set up on my own web server, rather than local wamp, or it needs access to android SDK files, which I guess could be done server side, just got too many other little projects on now to start trying to learn all that, I'll lock in a beta trial from your server for now, and play around on wamp when ibget a chance, then think about running off my web server, more practical in the long run, but for 10 bucks could just let you guys do all the heavy lifting, but lose a bit of full control... Good luck with the project. Could be a winner longterm
not sure if I am missing anything here, but isn't Webkey a better option with more functions and completely free?
https://play.google.com/store/apps/details?id=com.webkey&hl=en
wernyuen said:
not sure if I am missing anything here, but isn't Webkey a better option with more functions and completely free?
https://play.google.com/store/apps/details?id=com.webkey&hl=en
Click to expand...
Click to collapse
Webkey user here. I was disappointed about not seeing remote screen view and control. But yes this requires root.
I respect not putting in root features but this is the only real feature i use of webkey.
d31b0y said:
Is there a limit on the number of devices that you can register to one account?
EDIT: also, there is a fine line between being useful and being useful to the point of being considered malware. DenDroid and other RAT applications have gotten huge amounts of bad press recently becuase of the functionality that they posess and the possibility of being installed without users knowledge by being packaged in other applications.
Do you have any plans in place to stop your application getting a bad name for itself? Or to stop it from being used for these kinds of purposes?
Perhaps by enforcing a manual registration process on the phone itself.
(I just want to make clear I am not, in any way, accusing this application of any sort of nefarious tasks)
EDIT2: I found the answer to my first question in your FAQ.
Click to expand...
Click to collapse
Yes, at first I was conflicted about calling it a Remote Administration Tool due to the malicious reputation of similar tools even though that's what it really is. However, Monitordroid does require physical access to the device unlike other tools designed to be malicious which can be binded to another application's APK and spread through an app store.
mephala124 said:
Afraid any features like screenshots or screencasting would require having a rooted device, which I'm not actively developing towards.
If anyone wants to contribute root-only features to the source though... :good:
Click to expand...
Click to collapse
we want root we want root
basic
mmm very basic application just for kids. NOT PRO.
No rooted features, no screen capture, stream audio, etc.
Just something any coder could code in 2 minutes.
Hope you improve it, else it is just for 4 years old kids that want to play with android
droopyar said:
mmm very basic application just for kids. NOT PRO.
No rooted features, no screen capture, stream audio, etc.
Just something any coder could code in 2 minutes.
Hope you improve it, else it is just for 4 years old kids that want to play with android
Click to expand...
Click to collapse
The Application is currently in a beta state with more standard features to be added soon. The application is also open-source with a good, stable foundation for server-device communication, so if someone wanted to contribute root-only features to the source I would happily be in support of that.
I may eventually develop root-only features myself, but for now i'm more focused on developing features that can be used on any device.
sounds good, downloading
mephala124 said:
http://www.montiordroid.com/
Click to expand...
Click to collapse
Hate to be a grammar nazi but please correct URL as it links to a different site. :highfive:
Server Source Code
Am I missing something here or the server source code isn't available ?
OwnPush
We know that push messaging is a key tool for developers to keep users engaged with their apps/services and to deliver timely content. Right now there's little or no choice in the way of push services outside of Google Cloud Messaging (GCM), which is a problem if you value control and security or want to reach the billion-or-so users without access to Google Mobile Services on their devices. As a result of working on XDA Labs and a few other internal projects, we at Fastboot and XDA have built an alternative to GCM that we want to make generally available.
OwnPush is:
- End-to-end encrypted: With GCM, all messages go through Google, which acts as the gatekeeper between developer and user. We know that Android users value their privacy, and OwnPush messages are encrypted (seamlessly and by default) from the developer's server, all the way through to the end device. This means that we (and anyone else in the path) can't get into your push messages. Like it should be.
- Simple to use: Push messages can be delivered to any device running Android, whether tablet or phone. It works over Wifi or mobile data, and it's very simple to use. To aid in implementing OwnPush in your applications, we will be providing libraries for major backend platforms to help with handling the encryption and signing process.
- Battery-light: GMS is fairly heavy on the battery, as it's got a huge number of features tied together, including location logging and Google accounts. OwnPush is as lightweight as possible.
We are still finishing things off, but we're looking to start working with developers on helping them integrate OwnPush in their apps. In the spirit of XDA, we'll be making it open source, although we need to finalize the details. You'll be able to include our (tiny, open source, easy-to-read) library in your app, and the rest will come automatically. We'll be working on some simple integration guides for the server side, so it's easy to send push messages using almost anything.
Below is a high-level overview of how ownPush works.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
What can this be used for?
OwnPush has the capability to be the driving force behind some really cool ideas, from a fully open-source PC-to-phone push system, to building real-time secure messaging platforms. OwnPush can do everything that other options can do, and it's more secure to boot! OwnPush enables you to keep your users informed while not impacting battery life. We hope that the uses for OwnPush are limited only to your imagination.
Open source tools are easier to work with, tweak and play with, and learn from. There's no reason to use the proprietary Google Services library just to get push messages working! Coupled with XDA Labs, you can start to build an ecosystem without relying on Google at all, and without them being able to shut your developer account down!
About Fastboot Mobile
We're a small, venture-capital free business. No external influences or pressures on how we work. We're developers like you, and we believe in giving people a real choice.
If you're interested in this, and want to get involved and have a play, please let us know via the thread or our contact form. At the moment, we're also looking to raise awareness of the technology behind OwnPush to the wider community. Together, we can make the default for push messaging secure, and perhaps even bring about an end to sending "secure login tokens" via SMS messages! We're looking to bring OwnPush to as many people as possible, so if you (or your business) have a need for properly secure push messaging, please get in touch.
OwnPush Usage Examples
OwnPush Performance Examples
For an example of what OwnPush can offer regarding battery savings, we setup a test with a Nexus 9 over a 20hr period. The test application used OwnPush to keep alive a server connection (typical ping <-> pong) once every 4-5 minutes and a push notification randomly sent every 2-10 minutes
Nexus 9 CPU usage over 20hrs running OwnPush
Application Resource usage
Google Services Resource usage over same time period
This looks great, thank you . The one thing I don't see mentioned anywhere is the possibility of self hosted servers. Is this something which you currently have plans for? I think it would be a bit odd to offer such a great decoupling from Google, only to replace that coupling with Fastboot Mobile. The option of self hosted push servers is even more critical when you think of the possible issues Fastboot Mobile may face down the line. With no obvious business model, what guarantee do we as developers have that the ownPush servers will still be around 2yrs from now? GCM on the other hand is backed by Android developers themselves, and has become such a critical infrastructure that we're essentially guaranteed its existence for years/decades.
Edit: The developer talked about this on reddit. You can find the discussion here: https://www.reddit.com/r/Android/comments/440euy/ownpush_open_source_endtoend_encrypted_push/czmfgnl
Where can I follow the progress of this project? Sorry, I am new to XDA. Thanks.
Sent from my Nexus 7 using Tapatalk
What license is planned? LGPL or Apache2?
Exciting news!
Very exciting, looking forward to testing this !
evilSquirrel said:
Where can I follow the progress of this project? Sorry, I am new to XDA. Thanks.
Sent from my Nexus 7 using Tapatalk
Click to expand...
Click to collapse
I would guess that this thread would hold that information in the future too
evilSquirrel said:
Where can I follow the progress of this project? Sorry, I am new to XDA. Thanks.
Click to expand...
Click to collapse
We'll keep this thread updated as appropriate.
jumoog said:
What license is planned? LGPL or Apache2?
Click to expand...
Click to collapse
We will be releasing under LGPL (version TBD).
OwnPush Demo Applications
Hello All,
We are happy to provide some more information about OwnPush today
Everyone involved with OwnPush has been hard at work getting the service to a level that we can demonstrate to the world, this has ended in the creation of two demo applications that we have published over the weekend.
These demo apps are as follows :-
RSS Demo
An RSS web service and corresponding android application, the webservice checks the RSS feed (BBC World News) rapidly and when a new item becomes available it is pushed with a link to the android application over OwnPush. The android application then shows the notification to the user. This demo shows the power savings that can be gained by using OwnPush.
OTP Demo
This demo is constructed from a simple web service and its android application counterpart. This makes use of the secure nature of OwnPush to send fast, safe, and secure passwords to an Android device. After the apk is installed & registered on the android device the user is shown a short, unique device ID that they can enter on a simple web form. On submission of this form the OTP is randomly generated and sent to the device securely.
For both of these demo applications we have published APKs for you to install and the code for the web services and android app (allowing any developers an insight into how they can implement OwnPush when it is fully available)
To find out more about these demo applications please visit our website demo.ownpush.com
I have been searching for a replacement to GCM and I would like to say thank you and that this is amazing, i cannot wait to start using it!
universelove said:
I have been searching for a replacement to GCM and I would like to say thank you and that this is amazing, i cannot wait to start using it!
Click to expand...
Click to collapse
We're excited to be able to let the cat out of the bag, so to speak. Please reach out via our website so we can stay in contact. In addition, check out our GitHub for more information about the demos, implementation, etc.
I guess since there hasn't been any code changes on Github in 3 months I guess this project is dead?
Sandman-007 said:
I guess since there hasn't been any code changes on Github in 3 months I guess this project is dead?
Click to expand...
Click to collapse
Nope the project is far from dead, we have been working internally to get a full demo system up and running. We have also supplied test accounts and app registration information to a handful of developers to get some feedback on how we can improve the current system (outside of normal bugfixes ect.)
We have also worked on testing with the new doze implementation on N and general stability fixes within the android service
If anyone is looking for more information on OwnPush please don't hesitate to drop me a line via PM on her
I am currently using CM 12.1 GApps-free and microG as alternative to GApps. microG seems to have GCM functionality. Is this app works well with microG?
will you develop plugin for Unity to all mobile platforms?
Can work push other app notify or not? Thanks,,,
Any more developers/users want to see a new push service
after come across own-push, I'd like to make a push service or continue with something working
as a contractor, some of my Europe clients ( startups ) really want to find a clean google free app.
at the quality of commercial pushy. Yet, free and well-known will be better.
as a developer, I want to add iOS + web push support so that no need to manage too many platforms.
single server to server API + end-to-end encrypted by a good algorithm to ensure no MITM issue.
use UDP will be even more battery friendly
make a tiny open source service possibly acceptable by major open ROMs , so all apps share same socket and same service.
or as a short term goal, the first app start the service; other apps connect to it. ( concept borrowed from github.com/vieux/OpenUDID )
Hey Everyone,
First of all sorry if this isn't the correct place to post this question, let me know if I have to move the topic.
I am a Software Trainer wanting to transition in to a Technical Trainer role. I consider myself 'tech-savy' and I have dabbed in to web-dev before but never android development and this is all new to me. I was wondering if someone can point me in the right direction on a few topics.
I was tasked to do a presentation/training on the following subject as part of a portfolio for a company I'm applying to:
'Android versions and their respective architectures.'
The presentation should be centered around the changes that were implemented from one version to the following versions through the lifecycle and the major breakthrough. I am not concerned with the changes on the application layer level..things like picture in picture for video was introduced with version 8 is not useful but things like 'Project Treble' are for example.
On this point I'm having trouble finding resources that would outline all these changes, wikipedia has some: https://en.wikipedia.org/wiki/Android_version_history but not all and it's hard to distinguish sometimes if it's an application feature or not. Any help with resources or advise on these points and the major highlights in versions on the architecture level are greatly appreciated.
Given the topic, the training should have a storytelling component to it, ie. should be compelling and not only convey the necessary information but keep the trainee engaged as always.
For this task I would like to ask you for some fun facts or interesting information. Other than the main idea of the talk I'm planning on creating an introduction to the android ecosystem, brief history why it was developed and why they went open source with it (resources on that would be helpful!) and a high level overview of the different layers for a non-technical person.. what is a kernel why they chose linux etc...
I'm looking to include fun facts like that the different versions are named based upon different desserts (up till a point) and so on, any fun facts you can share are appreciated!
Thank you for the help everyone!
Android OS is nothing else than another derivative of widespread Linux OS. It depends on the Linux kernel (
what is the core of any Android OS version, which directly interacts with the hardware; it manages all the system resources like “Memory”, “CPU”, "GPU", “Processes” and Attached peripheral devices to the system ) - what Android OS is based on - which features are supported. One must know that it's on manufacturer's decision what Linux kernel is used.
So architecture of Android OS is equivalent to this
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
My resume: You can't say this or that Android OS version supports this or that feature: this in the overall view depends on manufacturer of an Android powered device, always depends on underlaying hardware used.
I know this but we're talking about stock android supported from Google that is open source that comes with a specific Kernel by default.
That kernel comes with a set of features/architecture manufacturers can adapt /modify / add features or remove features from but that would be considered a fork and I'm not interested in all the various forks manufacturers make but the stock experience. In any case I believe most manufacturers mostly make changes on other layers and not the kernel itself anyway but that's another topic.. I'm not an expert but hopefully it makes sense where I'm coming from.
The relevant things I could find regarding this topic mostly come from the official dev documentation, release notes and the android blog.
So for example when I'm referring to a fundamental change in the android architecture with an update, it might be something like project treble:
Faster Adoption with Project Treble
We announced that the following devices, in addition to Pixel and Pixel 2, now support Android P Beta: Sony Xperia XZ2, Xiaomi Mi Mix 2S, Nokia 7 Plus, Oppo R15 Pro, Vivo X21, OnePlus 6 and Essential PH‑1. Android P Beta provides an opportunity for developers and early adopters around the world...
android-developers.googleblog.com
Here comes Treble: A modular base for Android
News and insights on the Android platform, developer tools, and events.
android-developers.googleblog.com
Which fundamentally changes one of the layers in the android stack to work in a different manner.,
Another such example I could find for example is the change in the runtime environment from the Dalvik Virtual Machine to Android runtime (ART)
Android 8.0 ART improvements | Android Open Source Project
source.android.com
Although these resources are great and help me out, it's pretty hard to find every specific major change between android versions like the ones mentioned above if you don't know what you're exactly looking for.
For example if you look at the release notes for android oreo (8.0):
https://developer.android.com/about/versions/oreo/android-8.0
There's absolutely nothing mentioning project treble or the fundamental change of the architecture so looking at the different release notes might give you a clue here and there about such changes but not actually list them which is very frustrating if you're trying to create a list of all the major such changes throughout the years.
For this reason I'm asking here if someone knows more about such changes because even specific key words would help me in my search not to mention resources that are actually structured where I could see per version exactly how the architecture changes not only bits and pieces.
IMHO a Stock Android doesn't exist: it exists AOSP, Google's Android ( based on AOSP ) what is only suitable to Google devices, and for all other mobile devices it exists a Manufacturer's Android ( based on AOSP ). AOSP only contains a minimalistic Linux kernel tailored to be used with mobile / embedded devices, a Google's Android only contains a Linux kernel what is necessary to run this Android on supported Google devices.
All the Android OS variants you know ( and love ) are based on AOSP.
But I may err, as always ...
So what I'm looking for is information on the architectural changes of ASOP throughout the different releases of ASOP similar to the examples I gave earlier but again.. struggling to find all of them.
My POV:
The only real change of AOSP's architecture since it was 1st released took place in 2017 / 2018 ( keyword: Project Treble ).
Project Treble is targeted to separate AOSP code from vendor code so that each can be compiled and updated independently.
It's the most major change in the architecture for sure but I'd definitely count things like ART pretty substantial worth mentioning changes in architecture as well, i.e:
Android 4.4 "KitKat" brought a technology preview of ART, including it as an alternative runtime environment and keeping Dalvik as the default virtual machine.[7][8] In the subsequent major Android release, Android 5.0 "Lollipop", Dalvik was entirely replaced by ART.
Also:
Android 7.0 "Nougat" switched its Java Runtime Environment from the discontinued Apache Harmony to OpenJDK, introducing a JIT compiler with code profiling to ART, which lets it constantly improve the performance of Android apps as they run.[9] The JIT compiler complements ART's current ahead-of-time compiler and helps improve runtime performance, and save storage space by only compiling some parts of the apps.[8][10]
Are some other changes that are of interest I could find but I'm sure there are more.
I did a lot of research on this topic and here are the major changes of the android architecture in a nutshell throughout the years:
Android 2.2
JIT bought to Dalvik
Android 4.1
SELinux added to android kernel
Android 4.4
ART runtime introduced
Android 5.0
ART replaces Dalvik
Android 7.0
Switches Java Run Time enviornment in Runtime from Apache Harmony to OpenJDK
Android 8.0
Completely re-works the Hardware Abstraction Layer via the Project Treble initiative.
Android 10
Project Mainline - some reworks on how coreOS components are updated (so that they dont require a system reboot)