My Android eclipse did not recognizing my 7 inch android tablet. its installing and showing usb icon on window but when i tried to run my application the device is not showing on eclipse.
You probably have to update your adb_usb.ini to include the USB ID of your device and/or install a driver if you're on Windows.
I had to this when I started developing for Kindle Fire.
Here's a page of instructions for Archos: http://www.archos.com/support/support_tech/updates_adb.html?country=us&lang=en You can probably find a similar page for your manufacturer.
After that, you need to stop adb and restart it and then you should be able to see your device.
Check out this THIS LINK.
I think you are facing problems in setting up your system for development, so take a look at step 3 on above link.
a. Log in as root and create this file: /etc/udev/rules.d/51-android.rules.
Use this format to add each vendor to the file:
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
b.Now execute:
chmod a+r /etc/udev/rules.d/51-android.rules
And if you are on ubuntu, THIS LINK will help you.
Good luck!
Related
UPDATE: Based on this Here is following question: Create specific device tree for AOSP
I followed this: https://source.android.com/source/building.html and set up the environment and downloaded the latest AOSP. Now I wnat to flash it on my specific device, let's say Galaxy S2.
In the "Configuring USB Access: 51-android.rules", how it should look? Because in above official tutorial each entry looks like:
//adb protocol for device X
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0600", OWNER="user"
//fastboot protocol for device X
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="user"
But in many places I found this:
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev"
Of course adding user to plugdev group is obvious, but still: In Google`s way there is separate entries for adb & fastboot, and the mode is different...
What would be the ultimate test to see if this step works?
Suppose I modify the correct lines of code & config files for my specific device like stated here: Android device configuration for AOSP. Which means I have a directory with full AOSP files. In the stage of $ lunch aosp_arm-eng what parameters should be for specific hardware device?
Now suppose I have in my output directory built & compiled AOSP files. How should I flash it on my device? It's not very clear from Google`s above tutorial. I prefer to get just a single zip file in order to flash it via CWM recovery etc.
Is there a way to test the result before flashing it on hardware device (To reduce the chances for brick...)?
Thanks,
The adb rules are to enable adb to work over USB. If you can connect to your device over ADB then the adb rules worked. You may have to enable ADB in the device's Developer Settings.
After you have synced AOSP you can build for your device. You can choose your device in the lunch menu. Run the build/setenv.sh script. Then run lunch. It will have a list of specific devices you can choose from. You can add to that list by syncing new device trees into the tree.
By default it will build system.imgs that you flash through fastboot. If you are building AOSP, make otapackage will make a flashable zip.
The build will make an emulator image that you can test by running emulator. That will give you a general idea of if your build works, but will not give you the full story with regards to your specific device. For instance, the emulator build might run but if you forgot to add the correct proprietary files the build might not boot on your specific device. But you are very unlikely to hard brick your device by flashing a system.img.
Recently I bought a new android tablet (a no-name Chinese tablet), and I'd like to test an application I'm developing on it.
However, when I try to run it through Eclipse, it won't recognize my tablet (the debugging mode is enabled on the tablet). When I have the select device dialog I see
Serial Number : ???????????
AVD Name : N/A
Target : unknown
Debug :
State : ??
I'm running Linux Mint. What should I do?
On Linux, you have to add an udev rule for your tablet. For instance:
#cat /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", SYSFS{idVendor}=="0502", MODE="0666"
you can use lsusb in order to retrive the vendor id
Bus 002 Device 016: ID 0502:3325 Acer, Inc.
For Linux you need to setup UDEV to support the manufacture's identity, or you need to restart adb using sudo.
To do it correctly, do this:
lsusb
and look for your tablet:
Bus 002 Device 008: ID 04e8:6860 Samsung Electronics Co., Ltd
Note the ID.
Then go to /etc/udev/rules.d and create a new file called androiddevelopment.rules in that file put this:
SUBSYSTEM=="usb", ATTRS{idVendor}=="xxxx", OWNER="yyyy", GROUP="zzzz"
Where xxxx is the first part of the ID (04e8 in my example), yyyy owner is your username and zzzz is your group.
Then restart udev:
sudo service udev restart
That should allow Linux to automatically allow your user to connect to that device.
Problem: How to get Eclipse to recognize my 7" RCA tablet:
This problem frustrated me for two days. I have a generic RCA 7" tablet that I bought at a Black Friday sale at Walmart. I was trying to use it with the Android SDK and eclipse, but my computer would not recognize the tablet as anything more than a storage device. I found several clues that led me in the right direction, but nothing seemed to work; finally found my answer here:
http://pychildren.blogspot.se/2012/12/getting-android-adb-working-with-pipo.html
(Before you start, if you are as much of a newbie as I am, go to this site first to find out something about terminal commands -
community.linuxmint.com/tutorial/view/100
I was working with Linux Mint 15. I had also installed the Eclipse and Android sdk bundle.
No matter what I did, Eclipse would not recognize my tablet. Finally I got the problem resolved. I really just had to three things:
First I had to go to my home folder
Then to the .android folder
Then add the following line to the bottom of the "adb.usb.ini" file:
0x2207
and save the file. I was able to do this from the GUI interface.
Second, I had to open a terminal and navigate to the file system folder
Then to the etc folder
Then to the udev folder
Then to the rules.d folder
I had to create a file called
"51-adroid.rules" that contained only two lines:
SUBSYSTEM=="usb", SYSFS{idVendor}=="2207", MODE=="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="0x2207", MODE=="0666"
(I probably needed only the last line, but several sources had not included the "0x" so I included it both ways.
Then, still in the terminal, I ran the following command from my home folder after the ? (just enter cd to return to the home folder)
sudo Development(the name of the folder in which I installed Eclipse and the sdk, yours will be different)/sdk/platform-tools/adb kill-server
Then I had to run the following command from the home folder
sudo Development(the name of the folder in which I installed Eclipse and the sdk)/sdk/platform-tools/adb start-server
I also had to make sure that debugging was enabled on my tablet.
I also turned off wifi on my tablet - no one but my last source had mentioned this, but I think that it may have helped.
Then, when I typed in "adb devices", my tablet was recognized. When I started Eclipse and started the Hello program, it displayed beautifully on my tablet. I just don't understand why my wife was not impressed.
I got HTC Desire phone, and i want to be able to run my application (developing ob eclipse or netbeans) on it. But when i run my applications i see (in the list of running devices ??? in 'name' column and ??? in status column. So i cant press OK button (its just disabled). Please tell me how can i make normal synchronization???
I think your problem is described here in step 3:
http://developer.android.com/guide/developing/device.html#setting-up
You have to:
If you're developing on Ubuntu Linux, you need to add a rules file that contains a USB configuration for each type of device you want to use for development. Each device manufacturer uses a different vendor ID. The example rules files below show how to add an entry for a single vendor ID (the HTC vendor ID). In order to support more devices, you will need additional lines of the same format that provide a different value for the SYSFS{idVendor} property. For other IDs, see the table of USB Vendor IDs, below.
Log in as root and create this file: /etc/udev/rules.d/51-android.rules.
For Gusty/Hardy, edit the file to read:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
For Dapper, edit the file to read:
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bb4", MODE="0666"
Now execute:
chmod a+r /etc/udev/rules.d/51-android.rules
So this means you've followed all the instructions on the android dev site:
http://developer.android.com/sdk/installing.html#InstallingADT
You should also google "Developing on a Device android dev" (cannot post 2 links!)
My solution is that you need to go (command-line) to "tools" sub-directory in the SDK (that's check step2 in the first link)
Commands to execute:
sudo ./adb kill-server
sudo ./adb start-server
./adb devices
this works for me. I have to do it every time I reboot (would love to have a solution for that!).
I would like to know whether is it possible to use my HTC wildfire (some links would be nice) for android development instead of the emulator.
I have tried to find the information by Google, but so far no useful results.
If I get more information, I'll update here.
[When I used wildfire with eclipse, I got this.]
Thank you very much.
From your screenshot, it looks like you do not have the permissions set properly to access the USB device.
Either try to run the adb service as root:
$ sudo adb kill-server; sudo adb start-server
OR, the more permanent solution is to set up udev rules for USB device permissions. See the instructions in step 3 of the android Developing on a Device page.
Log in as root and create this file: /etc/udev/rules.d/51-android.rules. The udev system checks this file for special cases when devices are detected.
Edit the file to read:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
This sets permission bits on the dev node to world read and writeable for the special case where the USB vendor ID is equal to 0bb4.
Now execute:
chmod a+r /etc/udev/rules.d/51-android.rules
... gives world read permission to these android rules which is needed to let the udev daemon process this new rule.
Sure, all you need is to install the USB driver and follow the directions from here.
The USB driver is included in the HTC Sync software, which you can get here.
Go to htc website
http://www.htc.com/europe/SupportViewNews.aspx?dl_id=982&news_id=769
and download the driver
and just connect the htc phone to the pc and run the application from eclipse.
No configuration needed. It directly runs on the phone instead of emulator.
Cheers!
The only other thing I can think of is how you've set your phone to connect via usb-to-computer... And that might just solve my own similar problems... I'm using "HTC Sync" as my connection style, when I haven't even tried the others.
Lets find out, shall we?
Nope. Connection type didn't matter at all. "Charge Only", "disk drive", "usb tethering", it didn't change my behavior at all (I can launch apps, but logcat shows nothing from my app, and my breakpoints are ignored).
Sounds like it's time for a new question.
If device still not detected (???), after updating /etc/udev/rules.d/51-android.rules as suggested earlier, also unplug and re-plug the usb cable into the device.
I can't get Ubuntu 9.10 to recognize the Nexus One as a debug device. I tried following the instructions found here but they are not working: http://alan.lamielle.net/2010/01/22/nexus-one-usb-in-ubuntu-9-10
Anyone know of a link or know how to get the Nexus One to debug correctly in Ubuntu 9.10?
the id is "18d1" not "0bb4" for Nexus One.
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
You might try SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666" instead of the line listed on that page. That is the rule that I use, and Ubuntu 9.10 amd64 recognizes it correctly.
You may also need to play around with the actual number in the front of the filename (shown as 51-android.rules in the linked-to page). Mine is 50-android.rules. The number controls the order in which the rules are applied, AFAIK.
Also, be sure reload udev (as shown on that page) and restart the adb daemon (via adb kill-server, then adb start-server).
You went through this?
Add android:debuggable="true" in your manifest.
On the device, go to the home screen, press MENU, select Applications > Development, then enable USB debugging.
After this, follow CommonsWare explanation. You might need to unplug/plug for it to work.
Wow, I feel like an idiot. Somewhere down the line I turned off my debug settings, so no matter what I did with the udev rules, it wouldn't show up. Now that I turned it on, it's working. Thanks to all who tried to help. :/