Android: It’s about time!
I don’t know why I waited so long. Maybe I just thought the G1 was ugly, maybe it’s my futile fight against the mob of conformity. I bought the Droid. Now my already over-active sense of entrepreneurship, restless production has new food. Goodbye night-time reading for a little while.
XKCD’s Randall Munroe, you understand me better than most…
![]() |
Socialize:This is my first app – a glorified “echo.” Send, refresh, and it will display what you’ve entered. But the cool thing is that this entire program took about 15 lines of code, and 10 lines of XML. It took me about 3 hours to install the tools, learn the API, deploy to my phone, and walk downstairs to show my roommate… not bad. But now the hunt is on. What am I going to create? I have a few ideas, nothing much of consequence: ScrumShark will need an Android app, and oh, I suppose iPhone, too. But what of value can really be created? I find myself at a mental standstill. So much power at my fingertips, but no strong vision of what it could mean. A big part of me feels that technology, as it becomes increasingly accessible, raises greater walls and prevents us from experiencing the true human interaction that we so desperately need. Perhaps an app to bring people together, physically, to meet and enjoy spending time together. Google Latitude is close, but not quite there… We’ll see what comes to mind… Randall, any good ideas? |
A few tips for the Linux users:
If you are developing with an AVD (Android Virtual Device) and you happen to plug your phone in, when you click “Run as, or Debug as Android Application,” Eclipse is going to try to deploy the app to your phone. Two things may happen:Your application will be deployed to the phone. Just so you know in case it’s not what you want to do. Be careful.
If you are trying to deploy to your phone, but haven’t yet set up USB permissions, you will get a NullPointerException: “Failed to deploy…” – This means your USB permissions are wrong. More on that…
Fixing the null-pointer:
An internal error occurred during: "Socialize". java.lang.NullPointerException at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.launch(Unknown Source) at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.doLaunch(Unknown Source) at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(Unknown Source) |
Chances are you need set up USB permissions by taking the following steps:
Plug in your phone and run “lsusb”
lincoln@quadshark ~ $ lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 008: ID 22b8:41db Motorola PCS Bus 004 Device 003: ID 046d:c505 Logitech, Inc. Cordless Mouse+Keyboard Receiver Bus 004 Device 002: ID 046d:c041 Logitech, Inc. G5 Laser Mouse Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub lincoln@quadshark ~ $ |
This line: “Bus 002 Device 008: ID 22b8:41db Motorola PCS” is what you are looking for. “22b8” is my “idProduct”, and “41db” is my idVendor. Your phone may be different, so keep that in mind when you are following the next steps.
As root, Edit or Create: /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTRS{idProduct}=="22b8", ATTRS{idVendor}=="41db", MODE="0666", OWNER="lb3" |
As root, Run: chmod a+r /etc/udev/rules.d/51-android.rules
lb3@quadshark ~ $ ls -la /etc/udev/rules.d/51-android.rules -rw-r--r-- 1 root root 95 2009-11-15 17:19 /etc/udev/rules.d/51-android.rules |
But where to go from here?
So many ideas already out there, but an infinity of un-thought-of ideas remain. Where do I go from here? How many other people out in this world have the desire to create, but a severe case of writer’s block!? Help me, Randall…….
PERL!
Posted in Technology
PERL? yieks!
Now that Android has a jit we can safely use groovy and scala.
Didn’t work. 🙁
Ubuntu 9.10, Eclipse 3.5.1, Android 2.0.1.
Strange, that’s exactly what I use.
Jory, I had the same issue. If you’re sure you have the rules file correct, try *as root*:
adb kill-server
adb start-server
and then adb devices should display you connected device.