Getting into development? - General Questions and Answers

I'm looking to start developing for windows mobile phones. Not like for Microsoft or anything, but simple little things. I've searched around a little, but had no success so far. I have some experience programming in basic, c++, and java. Problem is, I don't know where to start. What do I need? What do I need to compile? Is it the same as in windows, or is it a different compiler, or just different flags? What language should I start in? How do I access the hardware of the phone?
Ideally, my first project would be a "dead-man's handle" type of thing. I ride my motorcycle a lot, and I've already been hit. If it wasn't in a public place, I might not have gotten help. So what I want to make is a program that uses the accelerometer in the phone to detect stillness. If I'm still for +30 seconds, and the phone is at an angle that's different than when it's in my pocket, it sounds an alert and vibrates, asking for a response to see if I'm alive. If I do nothing for another 20 seconds or so, it sends a text to a preset number (probably a friend) with my gps location. They can then drive down there/call the cops/call me, whatever.
Feel free to take my idea completely, just let me use it if you make it.
EDIT: Wow, I cannot believe I didn't search for "windows mobile sdk". No need for this thread anymore. Unless you want to make that program, that is...

Related

Porting software to run on WM6

I'm not even sure this is possible and I'm in no way tech savvy enough to do it on my own but I'll at least ask.
I have a truck that i race alot and it has some fuel management software to set up fuel maps, timing, etc... I have an old laptop that i keep around the house solely for this vehicle tuning. I was wondering how/if i can run the software on my phone for 3 reasons..1 - i can give the wife the laptop, 2 - it would eliminate the need for the laptop in the truck, 3 - it would just be pretty damn cool.
The software is very basic so i think the phone could handle it, it's just a matter of getting it to the phone.
Any tips would be appreciated, or you can crash my dreams and tell me to move on if it's not possible.
Thanks
It depends on what OS your app was written for. If it is a DOS program then your are in luck.
You can use an emulator like Pocket DOS and run the program "as is" on your PPC (unless it has to connect to some special hardware or something).
If it is a windows app then to port it you would need the source code. Otherwise there are only two things you can do:
a) Rewrite the whole thing from scratch.
b) Search for an app for PPC that does the same thing or similar, chances are it already exists and may even be freeware.
depending on the application complication level... if it's only calculating som data, maybe (providing you know the rules it uses) it would be easy to prepare excel spreadsheet? Excel is capable of some really cool calculations. believe me ;]
Guys and gals, don’t forget to check out my brand new, MS-DOS / x86 emulation-related article at http://forum.xda-developers.com/showthread.php?p=1276884
(Sorry for flooding – IMHO, this article certainly deserves attention because it answers ALL the questions a Windows Mobile user may want to EVER ask about emulating MS-DOS. Make sure you read it!)

How do I begin developing an app that controls my computer?

Hi guys,
I am new to app development and I have seen a lot of articles about apps that control the computer, but how would I actually go about making one? It doesn't need to be over Wifi either; it just has to be able to do basic keyboard actions over USB.
- Adam
Bump. Anyone know where I could start?
Start with c+ and toss in a little Java coding.
amarcott11 said:
Bump. Anyone know where I could start?
Click to expand...
Click to collapse
You haven't even described what platform you're writing said app for.
Android apps are mostly Java... The rest, I dunno. MS is probably dotNET, apple is... objective C I think?
Sorry for the lack of information. All I know so far is I have Eclipse and ADT (I am developing an Android app). I understand XML and how to develop the GUI, but when it comes to making the app communicate with a computer, I don't have a clue where to begin or how to do it.
Any tips or guidelines on tools to use or how to start are appreciated.
amarcott11 said:
Sorry for the lack of information. All I know so far is I have Eclipse and ADT (I am developing an Android app). I understand XML and how to develop the GUI, but when it comes to making the app communicate with a computer, I don't have a clue where to begin or how to do it.
Any tips or guidelines on tools to use or how to start are appreciated.
Click to expand...
Click to collapse
By having a server program running on your computer which accepts data you send from your android.
If you want it to be difficult, do it over usb, the easy way would be wifi.
Check up on "sockets".
Thanks for the reply. The only problem is, I need it to have very fast response time. I would like it to be as similar to a USB keyboard as possible, so I don't think WiFi would work. What makes doing it over USB difficult?
Do you have the server side app already? what exactly are you trying to control on your computer?
It doesn't matter what I'm controlling, I just want to be able to get my app to send information that a server side program can take and be able to keyboard map.
So I'll need to code with C++ for the server side and java for the app itself?
Plus, from what I've read, I've learned that the Android platform doesn't support USB hosting. Is this true? I've seen ways around it but it seems pretty cryptic.
Sent from my Galaxy Nexus using XDA App
There already is one that is apart of the android market and you can even use it on another computer It's called Team viewer not sure if this would help you or not, but I liked it when I needed to use it.
You can do app development on a pc emeulator instead of your phone (if thats what your asking) and Google App Inventor is great, but servers are closing soon. So goodluck!
Yeah I would start looking up about c+, c++, and java coding.... goodluck
I appreciate the help. Ryan1918, I have used Teamviewer myself, but I am looking to develop more of a controller, as opposed to a remote desktop app.
amarcott11 said:
Thanks for the reply. The only problem is, I need it to have very fast response time. I would like it to be as similar to a USB keyboard as possible, so I don't think WiFi would work. What makes doing it over USB difficult?
Click to expand...
Click to collapse
Both can be done with java and if you program it right and the wifi signal is good you shouldnt have much of a delay.
It will be difficult to use the USB as a network interface for your application.
Using TCP/IP or UDP over Wifi will be much much easier.
I don't mean to ignore what you're saying about WiFi, but I strongly believe that for the market this app will be directed toward, USB will be necessary. I don't feel comfortable giving away my idea, but just know that my goal is to make the responsiveness virtually seamless if it is at all possible.
I will test it out with WiFi first, but in case I don't get the results I'm looking for, can you expand a little more on USB?
Will it only be hard for me on the developing side, or will the consumer have to also put in extra effort to get it to work over USB (installing other apps, rooting, etc.)? If I was to develop the app around USB, I would want it to be easy to set up if I did all the coding right.
From my continued research, I have found a few articles in the following links that might be leading me in the right direction:
http://developer.android.com/guide/topics/usb/accessory.html
http://developer.android.com/reference/android/hardware/usb/UsbManager.html
http://stackoverflow.com/questions/5848876/java-sockets-transmission-in-real-time
http://stackoverflow.com/questions/4762620/sending-simple-commands-from-android-through-usb
I don't have much expertise in the area, i just took a quick google shot at it and it showed from some forum posts and questions, that doing it through usb is not the easiest way.

cloning windows mobile OS or program

I'll make this as quick as possible, any help would be greatly appreciated. I have been searching for weeks for a solution. I have even looked on the forums here and haven't found anything addressing this. I need to either clone the operating system with included programs from my work phone, or I need to clone a particular program that we use in the field (which is ultimately the object), and i need to either run it as a Virtual Machine on a netbook, or I need to run it on a tablet. I'm not a noob when it comes to computers, but I am when it comes to working with cell phones since computers have mostly been my focus. I'm happy to make the transition though. Any of the programs I would need or tutorials anyone knows of would be fan frickin tastic. I searched youtube also and nothing on there. I'm serious about this, you reply, I'll reply back. Thanks ahead of time.

Request for guidance on SGP5 development journey

Hello! I'm a semi-competent programmer (been doing it for fun and profit for the last few years) and I do almost everything in Linux (and in Python/Java).
When I started working with Linux I wanted to learn everything about it, but I was an idiot when I started (probably still am) and didn't understand much of what I was reading so I focused on my programming skills instead of the OS itself.
When I first got an android device (xmas present from my girlfriend about a year ago), I looked at her like she was nuts, "WTH would I want one of them for? Thanks, though." Soon after, I loved the Samsung Galaxy Player 5 (YP-G70 Gingerbread 2.3.5 API level 10) she got me, and started learning how to write useful programs on it, and also stuck several thousand PDF copies of books on it so I could always learn wherever I went.
I had a dream, though, to totally customize it. Every sound, button, box, and bar and especially the boot/shutdown animations, made by me.
In doing so, I hope to learn a ton about embedded Linux and android.
So I started reading through everything I could find about development for Android (especially all the google docs) and my device in particular.
I've confirmed with myself that a so-called "hard-brick" is all but certain, and I will simply buy a new device or take the time to learn how to reflash through a JTAG interface, or both. (Actually, the JTAG would be my preferred option. I've done SOME work with JTAGs before, but didn't understand what I was doing at the time. Thank God for written language, the internet and smarter people than myself!)
I have some questions before I go blowing stuff up, though...
I want to compile Android from source (after making some adjustments, of course!) and flash it to my device. Per the google docs, fastboot makes that pretty easy to do, but per the dozen or so threads on XDA that I've read about fastboot on a SGP5, fastboot isn't available and I'll need to use someone elses stuff to make it work (eg, the great works of Cyanogen).
My question is:
Is it possible to put vanilla AOSP on an SGP5? Is it "possible" like it's "possible" to go to the moon (eg, I'll be reverse engineering the GPU/WIFI/etc hardware and writing drivers for them from scratch?)
Obviously Cyanogen and others have figured it out, and that probably means I could start with his work, but there's a ton of stuff on his github account and none of it speaks about my device specifically.
tl;dr
Basically, if I want to build my own super-minimal Android 2.3.5 distro that will run on a SGP5, whose branch of AOSP am I looking for?
Also, if I did manage to figure out the JTAG interface, I could, say, flash the engineering bootloader to the device and use fastboot, right? Is there another way to achieve this/remove all traces of Samsung?
Thanks!

[Completed] Need a lot of help with porting GB

ok, first, I'm disabled, in a chair, on the dole, and DIRT poor. This is pertinent because it means I can't afford a better device, I have to work within my means. Suggestions to upgrade my device will be ignored. Second, I use Windows, mostly. I CAN use Linux a BIT, but don't really want to, as it's not very intuitive or user-friendly, and my current PC hardware configuration has a LOT of difficulty running even the newest Linux distros. I consider myself pretty computer-savvy, been a freelance PC tech for 20 years now, so I've got some fairly advanced skills and knowledge. I think. I'll also say that my phone is rooted, and has CWM recovery installed.
What I need help with is porting my current rom, to remove ALL of the PHONE/SMS features, and ALL of the wifi power-saving features built into Android. Basically, I want it to function as a non-3g tablet, but with MAX WIFI. GPS would be nice, I use Maps and Navigation a lot, but is not REALLY necessary, as long as I can use a wifi location, Maps should work fine. Since my device is plugged in most of the time, I don't need power-saving features, and I'm pretty sure that THEY are why my device is constantly "disabling" my wifi network (wifi shows as available, 2 bars (-60 or -70 dBm, never seen more than -76) BUT labelled "Disabled, secured with wpa/wpa2 psk. KNOWN issue with GB, I'm pretty sure.) If I click connect, it works FINE. while I'm using it. but after about 10 mins, it's disabled again. Googling this problem has led me to the belief that it is the unwanted power-saving features that are doing this. I should say that I have a KILLER battery my brother gave me, at present I can go 3 days without a charge, and that's with music playing 24/7 over a bluetooth connection, max brightness, AND using wifi/tethering as much as I can. So battery life is not a problem.
I do NOT have access to the SOURCES for my rom. I emailed Huawei and asked for them, and was given a link to the stock firmware, which is in some kinda strange format (it's an .app file, and I can't open/edit it, merely install it. If I could unpackage it, I MIGHT be able to use IT as a source, but I doubt it.)
I can do the work, it's surprisingly easy. I am currently running a kernel that I compiled, but this is beyond me. I have a Linux partition runnin 14.04 LTS. What I need from you:
what programs to use? where to get them? Instructions on HOW to USE them written for somebody who knows JACK about Linux. I ca ./run_a_Program, and have SOME knowledge about repos/sources and compiling/cross-compiling.
and the BIG part is: WTF do I remove/change to accomplish this? PLEASE, if you are replying, remember that I'm an idiot about this stuff, so K.I.S.S.
I have read ALL of the "noob-friendly" guides available here, and they all have one fatal flaw for me: they tell you HOW to do stuff, but not WHAT to do. They setup a build environment, and say have fun. WTF? IDK what im doing, here. What does Demilitarized_zone_free_space=2048 mean? what does changing it affect? how do I change anything, given that IDK What any of this MEANS? Think of it like this: I grew up racing hotrods, know EVERYTHING about them. Now I'm trying to work on an electric-only car. A LOT of my knowledge is useless, but I HAVE already managed to mod a buncha stuff, so I have SOME learning.
I don't REALLY wanna spend YEARS learning Linux, just to tweak my phone. I know I'm gonna have to USE it to do what I want, that's fine. where to start?
And if there is some SIMPLER WAY to do this, I'd LOVE to hear it. I ran across an apk one time here on XDA, that solved the wifi issue, but I cannot find it now.
Hi!
I can understand your frustration. Have you tried asking in the guide threads that you've referred to? Seems the best place to ask questions to me.
Have you seen this guide?
> Android Development and Hacking > Android General > [GUIDE] How to port Stock/GB/CM7/CM9/ICS/CM10/JB Based ROMs [Update: Sept.25.2012
It's an old thread, but still some recent activity in it. Or ask in any of the other threads you spoke about reading.
You could ask for help here as well,
> Android Development and Hacking > Miscellaneous Android Development
Hopefully you can find help in one of these places!
Good luck!

Categories

Resources