I'm implementing in-app billing in Android and it's giving me headaches. 

When I try to buy my products from the in-app store, bang: "Item unavailable",  

but if I try the `android_test_purchased` everything goes fine. 

I made a list with 'all' the possible causes for this problem and checked each one.  

Here is the list:

* in `Security.java`, the public key should be same as the one in the Android Market account
* the version of the Market application in the Device should be `2.3.4` or higher
* the device you use for testing must run a standard version of the `Android 1.6` or later
* the application being tested must be uploaded as `draft`, in the Android market, and must be signed
* the application installed in the device must be the same as the one that was uploaded as draft to the market
* the device must have a `something@gmail.com` account as its primary account and this account should be defined as a test account in the Android market
* the products for in-app billing in the Android market must have the same IDs as the ones displayed in the application
* the in-app products in the Android market must be published

Any suggestion and modification to this list is well appreciated. 

Thanks