Google Maps Api android key - android

I have some trouble testing my Android application which includes the google maps API. The ooficial API example worked just fine but if I copy the code into my own project it keeps saying: "The application has stopped unexpectedly". I looked up the key in the keystore several times and registered it with google. Even tried reinstalling the SDK. Does anybody know what the problem is?
Thanks in advance
05-16 14:31:11.142: ERROR/ActivityThread(662): Failed to find provider info for com.google.settings
05-16 14:31:11.150: ERROR/ActivityThread(662): Failed to find provider info for com.google.settings
05-16 14:31:12.598: ERROR/MediaPlayerService(542): Couldn't open fd for content://settings/system/notification_sound
05-16 14:31:12.624: ERROR/MediaPlayer(562): Unable to to create media player
05-16 14:31:05.098: ERROR/ActivityThread(608): Failed to find provider info for android.server.checkin
05-16 14:31:06.538: ERROR/ActivityThread(608): Failed to find provider info for android.server.checkin
05-16 14:31:06.645: ERROR/ActivityThread(608): Failed to find provider info for android.server.checkin
05-16 14:31:12.803: ERROR/AndroidRuntime(715): ERROR: thread attach failed
05-16 14:31:13.698: ERROR/ActivityThread(723): Failed to find provider info for com.google.settings
05-16 14:31:13.987: ERROR/AndroidRuntime(723): Uncaught handler: thread main exiting due to uncaught exception
Basically my code is:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//connect to server
//get current map scope
//get media within map scope + a bit
//init and show map
setContentView(R.layout.main);
//add zoom controls
mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
//add menu
}
Exceptions:
05-16 15:13:05.204: ERROR/AndroidRuntime(726): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.diretto.client.smartphone.android/org.diretto.client.smartphone.android.AnDiretto}: android.view.InflateException: Binary XML file line #6: Error inflating class java.lang.reflect.Constructor
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2268)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2284)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread.access$1800(ActivityThread.java:112)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1692)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.os.Looper.loop(Looper.java:123)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread.main(ActivityThread.java:3948)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at java.lang.reflect.Method.invoke(Method.java:521)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at dalvik.system.NativeStart.main(Native Method)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class java.lang.reflect.Constructor
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.createView(LayoutInflater.java:512)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:564)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.rInflate(LayoutInflater.java:617)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:309)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.Activity.setContentView(Activity.java:1626)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at org.diretto.client.smartphone.android.AnDiretto.onCreate(AnDiretto.java:39)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2231)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): ... 11 more
05-16 15:13:05.204: ERROR/AndroidRuntime(726): Caused by: java.lang.reflect.InvocationTargetException
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.google.android.maps.MapView.(MapView.java:237)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at java.lang.reflect.Constructor.constructNative(Native Method)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at android.view.LayoutInflater.createView(LayoutInflater.java:499)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): ... 21 more
05-16 15:13:05.204: ERROR/AndroidRuntime(726): Caused by: java.lang.IllegalStateException: You are only allowed to have a single MapView in a MapActivity
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.google.android.maps.MapActivity.setupMapView(MapActivity.java:180)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.google.android.maps.MapView.(MapView.java:279)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): at com.google.android.maps.MapView.(MapView.java:254)
05-16 15:13:05.204: ERROR/AndroidRuntime(726): ... 25 more
XML file line 6 would be:
<com.google.android.maps.MapView android:id="#+id/mapview" ...
followed by other lines of XML-parameters

First, do not answer your own question unless you are truly providing an answer. You can edit your question to add new materials, such as your longer stack trace.
Your exception is:
Caused by: java.lang.IllegalStateException: You are only allowed to have a single MapView in a MapActivity
This is because you are only allowed to have a single MapView in a MapActivity, and apparently you have two or more.

I know you are well past this issue, but I had the same issue, here are my notes about the same problem and how I was able to fix it.
You are only allowed to have a single MapView in a MapActivity
Delete a view and recreate it

Related

Google Maps api v2 class not found

I am using google maps api v2 and everything was working fine . today morning i updated the sdk and now maps are not working. Tried a lot of things like importing the lib project again and all but nothing seems to work . Plz help.
This is the logcat output
05-16 08:53:34.327: E/dalvikvm(3422): Could not find class 'com.google.android.gms.maps.model.LatLng', referenced from method com.apptree.de_luxe.InfoActivity.<clinit>
05-16 08:53:34.327: W/dalvikvm(3422): VFY: unable to resolve new-instance 170 (Lcom/google/android/gms/maps/model/LatLng;) in Lcom/apptree/de_luxe/InfoActivity;
05-16 08:53:34.327: D/dalvikvm(3422): VFY: replacing opcode 0x22 at 0x0000
05-16 08:53:34.327: E/dalvikvm(3422): Could not find class 'com.google.android.gms.maps.model.MarkerOptions', referenced from method com.apptree.de_luxe.InfoActivity.setUpMap
05-16 08:53:34.327: W/dalvikvm(3422): VFY: unable to resolve new-instance 172 (Lcom/google/android/gms/maps/model/MarkerOptions;) in Lcom/apptree/de_luxe/InfoActivity;
05-16 08:53:34.327: D/dalvikvm(3422): VFY: replacing opcode 0x22 at 0x0002
05-16 08:53:34.347: E/dalvikvm(3422): Could not find class 'com.google.android.gms.maps.MapFragment', referenced from method com.apptree.de_luxe.InfoActivity.setUpMapIfNeeded
05-16 08:53:34.347: W/dalvikvm(3422): VFY: unable to resolve check-cast 169 (Lcom/google/android/gms/maps/MapFragment;) in Lcom/apptree/de_luxe/InfoActivity;
05-16 08:53:34.357: D/dalvikvm(3422): VFY: replacing opcode 0x1f at 0x000f
05-16 08:53:34.367: D/dalvikvm(3422): DexOpt: unable to opt direct call 0x029b at 0x0c in Lcom/apptree/de_luxe/InfoActivity;.<clinit>
05-16 08:53:34.367: D/dalvikvm(3422): DexOpt: unable to opt direct call 0x029c at 0x04 in Lcom/apptree/de_luxe/InfoActivity;.setUpMap
05-16 08:53:34.387: W/dalvikvm(3422): Exception Ljava/lang/NoClassDefFoundError; thrown while initializing Lcom/apptree/de_luxe/InfoActivity;
05-16 08:53:34.387: W/dalvikvm(3422): Class init failed in newInstance call (Lcom/apptree/de_luxe/InfoActivity;)
05-16 08:53:34.387: D/AndroidRuntime(3422): Shutting down VM
05-16 08:53:34.398: W/dalvikvm(3422): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
05-16 08:53:34.457: E/AndroidRuntime(3422): FATAL EXCEPTION: main
05-16 08:53:34.457: E/AndroidRuntime(3422): java.lang.ExceptionInInitializerError
05-16 08:53:34.457: E/AndroidRuntime(3422): at java.lang.Class.newInstanceImpl(Native Method)
05-16 08:53:34.457: E/AndroidRuntime(3422): at java.lang.Class.newInstance(Class.java:1319)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.Instrumentation.newActivity(Instrumentation.java:1054)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.ActivityThread.access$600(ActivityThread.java:141)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.os.Looper.loop(Looper.java:137)
05-16 08:53:34.457: E/AndroidRuntime(3422): at android.app.ActivityThread.main(ActivityThread.java:5041)
05-16 08:53:34.457: E/AndroidRuntime(3422): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 08:53:34.457: E/AndroidRuntime(3422): at java.lang.reflect.Method.invoke(Method.java:511)
05-16 08:53:34.457: E/AndroidRuntime(3422): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
05-16 08:53:34.457: E/AndroidRuntime(3422): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
05-16 08:53:34.457: E/AndroidRuntime(3422): at dalvik.system.NativeStart.main(Native Method)
05-16 08:53:34.457: E/AndroidRuntime(3422): Caused by: java.lang.NoClassDefFoundError: com.google.android.gms.maps.model.LatLng
05-16 08:53:34.457: E/AndroidRuntime(3422): at com.apptree.de_luxe.InfoActivity.<clinit>(InfoActivity.java:35)
05-16 08:53:34.457: E/AndroidRuntime(3422): ... 15 more
In Eclipse go to:
"Project" -> "Properties" -> "Java Build Properties"
On the "Order and Export" tab I checked "Android Private Libraries" on my project. I also did this for the library project it references. This fixed my class not found errors following upgrading to SDK 22.
You should refer the google play services library project in your map project.
Import your library project to your worksace. import the same to eclipse.
Right click on your project. goto properties. Choose android. click android. browse and add the library project.

Getting error while using tabhost in 2.3.3

Hello i am using the tabhost in my application it works fine in 4.0 and up but when i try to run it in 2.3.3 it returns me a null pointer exception and force closes the application
here is the code i am getting error in :
TextView t = new TextView(this) ;
t= (TextView) getTabWidget().getChildAt(i).findViewById(android.R.id.title);
t.setTextColor(Color. parseColor("#ffffff"));
if (i == 0) tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#00aedb"));
else tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#0d82df"));
this is my logcat output :
05-16 12:29:27.009: E/AndroidRuntime(534): FATAL EXCEPTION: main
05-16 12:29:27.009: E/AndroidRuntime(534): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.moneyminder/com.example.moneyminder.MainActivity}: java.lang.NullPointerException
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.os.Looper.loop(Looper.java:123)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread.main(ActivityThread.java:3683)
05-16 12:29:27.009: E/AndroidRuntime(534): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 12:29:27.009: E/AndroidRuntime(534): at java.lang.reflect.Method.invoke(Method.java:507)
05-16 12:29:27.009: E/AndroidRuntime(534): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
05-16 12:29:27.009: E/AndroidRuntime(534): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
05-16 12:29:27.009: E/AndroidRuntime(534): at dalvik.system.NativeStart.main(Native Method)
05-16 12:29:27.009: E/AndroidRuntime(534): Caused by: java.lang.NullPointerException
05-16 12:29:27.009: E/AndroidRuntime(534): at com.example.moneyminder.MainActivity.onCreate(MainActivity.java:78)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-16 12:29:27.009: E/AndroidRuntime(534): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
05-16 12:29:27.009: E/AndroidRuntime(534): ... 11 more

Animation file crashes application using SherlockActionBar

when i adding an animation xml file to my project(i was trying scale, rotate, set) and try to launch it in Android 2.1 virtual machine, it crashed with following messages in logcat
05-16 00:14:01.821: E/AndroidRuntime(898): Uncaught handler: thread main exiting due to uncaught exception
05-16 00:14:01.861: E/AndroidRuntime(898): java.lang.RuntimeException: Unable to start activity ComponentInfo{su.k_r.tasstelecom/su.k_r.tasstelecom.CategoriesActivity}: android.view.InflateException: Binary XML file line #31: Error inflating class com.actionbarsherlock.internal.widget.ActionBarView
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread.access$2200(ActivityThread.java:119)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.os.Looper.loop(Looper.java:123)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread.main(ActivityThread.java:4363)
05-16 00:14:01.861: E/AndroidRuntime(898): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 00:14:01.861: E/AndroidRuntime(898): at java.lang.reflect.Method.invoke(Method.java:521)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
05-16 00:14:01.861: E/AndroidRuntime(898): at dalvik.system.NativeStart.main(Native Method)
05-16 00:14:01.861: E/AndroidRuntime(898): Caused by: android.view.InflateException: Binary XML file line #31: Error inflating class com.actionbarsherlock.internal.widget.ActionBarView
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.internal.ActionBarSherlockCompat.generateLayout(ActionBarSherlockCompat.java:1042)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.internal.ActionBarSherlockCompat.installDecor(ActionBarSherlockCompat.java:912)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.internal.ActionBarSherlockCompat.setContentView(ActionBarSherlockCompat.java:846)
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.app.SherlockListActivity.setContentView(SherlockListActivity.java:212)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ListActivity.ensureList(ListActivity.java:305)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ListActivity.getListView(ListActivity.java:290)
05-16 00:14:01.861: E/AndroidRuntime(898): at su.k_r.tasstelecom.CategoriesActivity.onCreate(CategoriesActivity.java:72)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
05-16 00:14:01.861: E/AndroidRuntime(898): ... 11 more
05-16 00:14:01.861: E/AndroidRuntime(898): Caused by: java.lang.reflect.InvocationTargetException
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.internal.widget.ActionBarView.<init>(ActionBarView.java:235)
05-16 00:14:01.861: E/AndroidRuntime(898): at java.lang.reflect.Constructor.constructNative(Native Method)
05-16 00:14:01.861: E/AndroidRuntime(898): at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
05-16 00:14:01.861: E/AndroidRuntime(898): at android.view.LayoutInflater.createView(LayoutInflater.java:500)
05-16 00:14:01.861: E/AndroidRuntime(898): ... 26 more
05-16 00:14:01.861: E/AndroidRuntime(898): Caused by: java.lang.NullPointerException
05-16 00:14:01.861: E/AndroidRuntime(898): at com.actionbarsherlock.internal.widget.ActionBarView$HomeView.setUp(ActionBarView.java:1302)
05-16 00:14:01.861: E/AndroidRuntime(898): ... 30 more
I don't even use animation in code.
Where i'm doing wrong?
In android 4.0 everything works great
Cleaning ABS project fix problem

NoClassDeffoundError in spring android

Hi guys I am facing problrm as NoClassDeffound: org.springframework.web.client.RestTemplate.
I don't know how it will removed? Please suggest me the solution.
Error: 05-16 15:59:03.324:
ERROR/AndroidRuntime(296):
java.lang.NoClassDefFoundError:
org.springframework.web.client.RestTemplate
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
org.shopzilla.android.parsing.SearchResult_Json.json_parse(SearchResult_Json.java:10)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
org.shopzilla.android.search.SearchResultActivity$1.onClick(SearchResultActivity.java:26)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.view.View.performClick(View.java:2408)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.view.View$PerformClick.run(View.java:8816)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.os.Handler.handleCallback(Handler.java:587)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.os.Handler.dispatchMessage(Handler.java:92)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.os.Looper.loop(Looper.java:123)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
android.app.ActivityThread.main(ActivityThread.java:4627)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
java.lang.reflect.Method.invokeNative(Native
Method) 05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
java.lang.reflect.Method.invoke(Method.java:521)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-16 15:59:03.324:
ERROR/AndroidRuntime(296): at
dalvik.system.NativeStart.main(Native
Method)
code:
public void json_parse()
{
RestTemplate restTemplate = new RestTemplate();
String url = "http://catalog.bizrate.com/services/catalog/v1/us/product/2?publisherId=50085&placementId=1&categoryId=1&keyword=iphone+cases&start=0&results=10&sort=relevancy_desc&brandId=&attFilter=&zipCode=90291&biddedOnly=&minRelevancyScore=100&apiKey=58f536aa2fab110bbe0da501150bac1e&format=json";
String result = restTemplate.getForObject(url, String.class, "SpringSource");
System.out.println("Result:"+result);
}
The exception occurs because the RestTemplate is not included in the .apk. I have struggled with this problem for a while myself and found out that i haven't installed the m2eclipse-android-integration plugin. After installing the plugin everything worked seamlessly. I am now able to use the "Run as < Android Application" function from within Eclipse/STS.
You may have to create your project again to get this working.
Do you add your Spring jar files in libs folder correctly?
spring-android-core-1.0.0.RELEASE.jar
spring-android-rest-template-1.0.0.RELEASE.jar
If you did try this
Right click on your jar files in libs folder > BuildPath > Exclude Then Right click on your jar files in libs folder > BuildPath > Include your files again
short answer:
remove jars from build path and rename lib to libs -> done
https://jira.springsource.org/browse/ANDROID-78
http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17
put .jars into /libs folder, so they to be included in the .apk

java.lang.VerifyError when running Android jUnit Test

I've been trying to work out why I keep getting a java.lang.VerifyError
every time I try to instantiate one of my classes in any of my jUnit tests, but am completely stumped.
I created a simple, minimal test case that exhibits this behaviour:
package com.example;
public class Foo {
private int bar;
public Foo(int b) {
bar = b;
}
public int getBar() {
return bar;
}
}
And the unit tests:
package com.example.tests;
import com.example.Foo;
import junit.framework.TestCase;
public class FooTest extends TestCase {
private Foo foo;
protected void setUp() throws Exception {
super.setUp();
}
public void testSanity() {
foo = new Foo(1);
assertTrue(true);
}
}
When the unit tests attempts to instantiate a Foo object e.g. the first line of the testSanity method, I get a java.lang.VerifyError.
The project is being built against Android 1.6. The stack trace from DDMS in Eclipse looks like this:
05-16 23:40:01.543: ERROR/AndroidRuntime(934): Uncaught handler: thread main exiting due to uncaught exception
05-16 23:40:01.563: ERROR/AndroidRuntime(934): java.lang.VerifyError: com.example.tests.FooTest
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at java.lang.Class.getDeclaredConstructors(Native Method)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at java.lang.Class.getConstructor(Class.java:484)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at junit.framework.TestSuite.getTestConstructor(TestSuite.java:177)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at junit.framework.TestSuite.<init>(TestSuite.java:59)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at junit.runner.BaseTestRunner.getTest(BaseTestRunner.java:103)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.AndroidTestRunner.getTest(AndroidTestRunner.java:124)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.AndroidTestRunner.setTestClassName(AndroidTestRunner.java:52)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.suitebuilder.TestSuiteBuilder.addTestClassByName(TestSuiteBuilder.java:81)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.InstrumentationTestRunner.parseTestClass(InstrumentationTestRunner.java:375)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.InstrumentationTestRunner.parseTestClasses(InstrumentationTestRunner.java:357)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:325)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3848)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.app.ActivityThread.access$2800(ActivityThread.java:116)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.os.Looper.loop(Looper.java:123)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at android.app.ActivityThread.main(ActivityThread.java:4203)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at java.lang.reflect.Method.invoke(Method.java:521)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
05-16 23:40:01.563: ERROR/AndroidRuntime(934): at dalvik.system.NativeStart.main(Native Met
Any help in fixing this and getting the tests running would be much appreciated.
UPDATE
Further to fadden's answer, the VFY logcat output is as follows:
05-18 20:33:04.052: ERROR/dalvikvm(234): Could not find class 'com.example.Foo', referenced from method com.example.tests.FooTest.testSanity
05-18 20:33:04.052: WARN/dalvikvm(234): VFY: unable to resolve new-instance 5 (Lcom/example/Foo;) in Lcom/example/tests/FooTest;
05-18 20:33:04.052: WARN/dalvikvm(234): VFY: rejecting opcode 0x22 at 0x0001
05-18 20:33:04.052: WARN/dalvikvm(234): VFY: rejected Lcom/example/tests/FooTest;.testSanity ()V
05-18 20:33:04.052: WARN/dalvikvm(234): Verifier rejected class Lcom/example/tests/FooTest;
The verifier in 1.5/1.6 was pretty severe. The detailed explanation of the problem is on the lines above the exception (look for "VFY" in the logcat output).
UPDATE: looking at the logcat output, code in com.example.tests.FooTest is not able to find com.example.Foo. In Android >= 2.0 this would result in a ClassNotFoundException, but in 1.6 the verifier gets cranky and just rejects the whole class.
So the question is: why can't it find it? The first thing I'd check is to make sure both com.example.Foo and com.example.tests.FooTest appear in the same APK / classes.dex file. You can check this by examining them with "dexdump".

Categories

Resources