Android :: Unit Testing Project Gets A NoClassDefFoundError For 3rd Party Jars
Oct 27, 2010
I'm trying to run unit tests on my Android app and I'm getting a NoClassDefFoundError when referencing 3rd party jars.
The classes in those jars are only referenced by the app itself, not the unit tests. The jars are on the apps classpath and have been exported in the eclipse settings to allow tyhem to be found by dependant apps - which, of course, the test app is.
View 1 Replies
Apr 1, 2010
Is it possible to have an AndroidManifest.xml and or resource files in a Jar file and import that into a executable Android project?
My goal is to provide styles, resources, and services from a jar library that can be accessed from a main android project for my common tools.
View 2 Replies
View Related
Jul 14, 2010
I was finally able to build and debug the android platform (the process can be seen here). Now, the question is: where are the unit tests, how do I launch them and where do I see results? And also, is there any guide to android platform architecture?
View 1 Replies
View Related
Nov 17, 2010
There is no way to load a string from a specific locale's language file.
What I want to do is run all my locales' (I have 24 of them) time format strings through unit tests to make sure they don't crash. For example, here's a date format string in French: "'Hier à ' h:mm a".
These really need to be unit tested, because translators aren't great about properly escaping these strings, causing crashes unless we manually verify every string in every language every time we get a translation pass back.
This question has a sort-of answer. Is that really the only way? Is there a better way to specify the locale of a Context in unit tests?
View 1 Replies
View Related
Jul 3, 2009
I my main app and tests are organized like this (standard from "android create project"): AndroidManifest.xml assets/ main app asset files src/tests/AndroidManifest.xml -- uses <instrumentation> to point to the main app assets/ -- test-specific asset files src/ Writing test cases with AndroidTestCase, I'd like to load asset files from the test-specific assets/ directory, not from the main app assets/ directory. How can I accomplish that? The normal way to load an asset would be getContext().getAssets().open ("foo.txt"), for assets/foo.txt in the main app. I assume I just have to somehow change the Context or the AssetManager to point to the test- specific assets directory, but I don't see any way to do that. I have looked into the tests/bin/MyApp-debug.apk to confirm that the test assets are in there. Now I just need a way to access them.
View 2 Replies
View Related
Oct 5, 2010
I have a class that uses a Handler for a timed, asynchronous activity.
Something like this:
CODE:.................
View 11 Replies
View Related
Mar 30, 2010
I'm trying to start unit testing on my application (should have done so from the beginning). I've got an Eclipse project structure set up and everything seems to work well, but...
I'm subclassing SQLiteOpenHelper to access the application database. This works well for the application, but when using the same class in the unit tests, it writes to the same database as the actual application. This is obviously rather irritating, since unit test data shows up when developing and testing the actual application.
What's the best way to make the SQLiteOpenHelper class write to a different database file when being called from the unit tests?
View 2 Replies
View Related
Dec 6, 2009
I have a very simple activity created with one seek bar. I'm trying to figure out how best to unit test the events.
Below is how I have the seek bar wired up in my activity.
CODE:.........
So with this I have a test class that extends ActivityInstrumentationTestCase and I have test method.
Should I not be able to so something like this? Right now I'm getting Test run failed: String resource ID #0x2 with this code.
CODE:....................
View 2 Replies
View Related
Oct 8, 2010
I want to start with a consistent test environment so I need to reset/clear my preferences. Here's the SetUp for test I have so far. It's not reporting any errors, and my tests pass, but the preferences are not being cleared.
I'm testing the "MainMenu" activity, but I temporarily switch to the OptionScreen activity (which extends Android's PreferenceActivity class.)
I do see the test correctly open the OptionScreen during the run.
CODE
:...............
StartNewActivity Code:
CODE:.................
View 1 Replies
View Related
Feb 22, 2010
I need to run unit tests for code that references SQLiteDatabase for my Android code; however all my attempts to instantiate this object outside the emulator (on my desktop machine) have failed. JDBC on Android is not being recommended on the Net, hence it's out of the question (I could have provided mock objects very easily that way).
View 2 Replies
View Related
Dec 18, 2009
What is the easiest way to create some kind of test harness for Android apps and to be able to visualize (even on the emulator) what is going into the db? I want to test things like constraints, look at the data, unit test methods, etc. Is there any kind of GUI tool that I can hook up to the emulator to be able to look at the db of a particular app while I'm developing/testing, or are my only options the adb shell and creating test Activities within my app?
View 1 Replies
View Related
Jan 27, 2010
I want to test parsing of data returned from server.I thought I might create several test XML files and then feed them to the sax parser which uses my custom data handler (as in the application that I test).But where should I put those test XMLs?I tried with [project_root] /res/xml, but then I get the error: android.content.res.Resources $NotFoundException: Resource ID #0x7f040000 type #0x1c is not valid at android.content. res. Resources. loadXml ResourceParser(Resources.java:1870)at android.content.res. Resources. getXml(Resources. java:779) Does that mean that the xml is invalid, or that android couldn't find the XML file?(I use the same XML that comes from the server - copied it from the firebug's net panel and pasted into the file).Can I somehow read that XML as a text file, since etContext(). getResources() .getXml (R.xml.test_response1) returns XmlResourceParser instead of String (which I'd prefer)?
View 1 Replies
View Related
Jul 22, 2010
I want to create a stub of one of my Activities, but I want to keep it in the test project so not to have it in the actual apk. I don't seem to be able to find a way to do it though. I get this:
java.lang.RuntimeException: Unable to resolve activity for: Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=com.example.test.StubActivity }
I did find if I put it in the main project and put it in the manifest accordingly (IntentFilter:(Action:Main, Category:Default)) it will work, well it actually crashed, but I am not bothered by that. Something to fix later on.I did think about putting everything in the same main project and just have a test package, but that would then involve messing the manifest, I think. It seems better to keep them separate. It's just cleaner.
View 1 Replies
View Related
Aug 6, 2010
I'm new to android unit testing. I'm trying to write a unit test for the Phone application:
package com.android.phone;
import android.content.Intent;
import android.net.Uri;
import android.test.ApplicationTestCase;
import android.test.suitebuilder.annotation.MediumTest;
import com.android.phone.PhoneApp;
import dalvik.annotation.TestTargetClass;...............
View 3 Replies
View Related
Feb 24, 2010
I wrote a simplest test based on android.test.ActivityInstrumentationTestCase2.
CODE:..............
View 2 Replies
View Related
Jul 21, 2010
I want display pie chart in android. Is there is any chart API or JARs available.
View 7 Replies
View Related
Sep 19, 2010
Long story short: I'm trying to post comments and create issues onto Google Code via an Android App called Abugadro.
I followed a very similar piece of code here:
http://stackoverflow.com/questions/3254330/google-spreadsheet-api-update-edit-with-protocol
When trying to post a comment onto the API, I've gotten various errors like 403 and 501 depending on the headers I use. Anyway, Code talks, so here's my piece:
HttpPost postRequest = new HttpPost("http://code.google.com/feeds/issues/p/"+projName+"/issues/"+issueId+"/comments/full");
postRequest.addHeader("Content-Type","application/atom+xml;charset=UTF-8");
postRequest.setHeader("Authorization", "GoogleLogin auth=" + auth);
postRequest.addHeader("User-Agent", "abugadro-v"+getResources().getString(R.string.version));
postRequest.addHeader("Accept-Encoding","gzip");
postRequest.addHeader("GData-Version", "1.0");
//postRequest.addHeader("If-Match", "*");//Not entirely sure if I should use this or not HttpEntity se = new StringEntity(xml,"UTF-8"); //Contains the comment info postRequest.setEntity(se);
The IssueTrackerAPI is very vague on what sort of headers I should be using to post correctly.
http://code.google.com/p/support/wiki/IssueTrackerAPI#Modifying_an_issue_or_creating_issue_comments
P.S. I know there's a gdata-java-client but there's no sane way to use that api on android without dragging ~2mb of jars.
I really appreciate your help, this issue has been driving me insane beyond comprehension.
View 1 Replies
View Related
Sep 25, 2010
My app just consists of a map with an overlay, but when I create my MapView, my app crashes with a NoClassDefFoundError. I'm using the Google API AVD that matches my target, but apparently I'm still doing something wrong.
In case it helps, my NoClassDefFoundError is complaining about [generic]. I can understand why there's no class definiton for [generic], but I'm not sure where that's coming from.
Also, a later ClassNotFoundException complains of com.google.android.maps.MapView in loader dalvik.system.PathClassLoader[/data/app/mathphreak.cellmap-1.apk], and that then goes on to cause a different NoClassDefFoundError for java.lang.NoClassDefFoundError: com.google.android.maps.MapView.
View 1 Replies
View Related
Aug 3, 2010
I try to use Official Android SDK (http://github.com/facebook/facebook-android-sdk/). I install the SDK and try to run the Example
At first, it fails at "build", it cannot find the Facebook SDK, so I try to follow the steps found in SDK page:
Add a dependency on the Facebook Android SDK library on your application:
From the File menu, select "Properties" once the project Properties are displayed, open the Android section, which should list the build targets and libraries in the bottom "Library" section, click "Add..." and select the Facebook SDK project refer to [url] for more details
I check the link at #4, it shows a Mac OS X version Eclipse, which has Library section, but on my Vista PC, with Eclipse 3.5.2, it does not have Library section...
-[url]
-[url]
I try to add the Facebook SDK in Java Build Path. Now it can "build" and start, on both Emulator and Device. However, once it started, it crash, the logcat shows: ERROR/AndroidRuntime(518): java.lang.NoClassDefFoundError: com.facebook.android.Util
-[url]
I searched around, about "NoClassDefFoundError" program, but seems those solution is solving external JARs files. I have no problem adding other JARs files, and this Facebook SDK is not JAR...
I tried Clean, rebuild, delete everything and config again, but can't solve this problem yet.
View 2 Replies
View Related
Mar 13, 2010
I'm writing an android 2.1 application that writes an entry to my Google calendar.
The relevant part of my application code looks like this:
CODE:..........
This code compiles with no errors, using Eclipse on MacOS, using external jar files from the Google gdata project: gdata/java/lib/gdata-calendar-2.0.jar gdata/java/lib/gdata-calendar-meta-2.0.jar
I export the application through Eclipse to generate the .apk file which I install on my N-1 phone. However the application cannot find the CalendarService class, giving me the following runtime error:
CODE:........................
When developing other android applications the "external jar files" always seem to be cross-compiled and packed into the apk file - so I do not understand why the app cannot find the CalendarService class.
View 14 Replies
View Related
Jul 31, 2010
I have two projects in Eclipse: service and UI client.
In onCreate in UI client I have:startService(new Intent(this, ExampleService.class));
But this fragment: ExampleService.class throws NoClassDefFoundError exception at runtime. I have installed ExampleService.apk, and ExampleUiClient.apk. Project compiles, and everything looks fine. What I am doing wrong?
Is it possible to start service from other apk?
View 2 Replies
View Related
Apr 9, 2010
I'm using an ant build file that has been generated by android. Our Android application requires a JAR file that lives inside the lib folder of our project, so I need to adjust the classpath that ant is using when it builds stuff.
When I run:
ant -lib lib debug
the project builds just fine, but this should really be inside the build file itself. The build file that android generates references the android_rules.xml so a lot of this stuff is automated. I guess my question, what the best practice here when working with the Android build rules ?
View 1 Replies
View Related
Aug 22, 2010
I am using Zend Studio 7.2 as my main IDE. I develop android apps. I wanted to work with html parsers, however adding external jars I get always the same problem Converting to dalvik format failed and eclipse needs a lot of time to build workspace.
any ideas?
View 1 Replies
View Related
May 26, 2010
I am building an Android hello world application in Netbeans. It's building properly and I am able to run in the emulator also. But when creating and running the Junit test I get a java.lang.NoClassDefFoundError.
View 2 Replies
View Related
Apr 16, 2009
I've been exploring the Android test package and I'm very confused on how to implement functional testing for endpoint-to-endpoint.
Consider the example below, I have 4 activities: 1. A Contact List Activity 2. A View Contact Activity 3. An Add/Edit Contact Activity 4. A Sync Contact List activity
I want to automate a few tests that will go through multiple test cases simulating a user experience: From launching the application, to selecting 'Add contact;' opening the add contact activity, entering data, saving it, going back to the list activity, and verifying the new contact was saved properly.
As I understand it, ActivityInstrumentationTestCase<T extends Activity> and ActivityUnitTestCase<T extends Activity>, are only useful for testing single activity functionality.
But what if I need to switch between 2 or more activities inside a single functional test case?
View 5 Replies
View Related
Feb 28, 2012
I am working on a project that require porting a program from Linux to Android; I have been successful to make work the required equinox3.6(modified) on Android and to make call the osgi by the application itself, BUT through the adb shell, running a script that launches the files in the .jar. At this point I should create an activity.apk that includes everything and makes it work the same way.
More in details, until now I have uploaded some archives.jar (containing the classes.dex) in the emulator: two jars for the program itself, a jar for equinox, other jars for support.Then there is the script.sh that launches the main.class of my program passing it some parameters necessary to the program and to equinox to start; the main.class launches the equinox framework and then the program can load bundles and do its job.To make it clear here is the starting script:
#/bin/sh
/system/bin/dalvikvm -Xbootclasspath:/system/framework/core.jar -Xverify:none -Dosgi.debug=file:.options -Dosgi.framework=file: org.eclipse.osgi_3.6.0.v20100517.jar -Dosgi.install.area=file:/bundles/ -Dosgi.java.profile=file: dalvik_Core_Library-0.9.profile -Dosgi.parentClassloader=ext -Dnetserv.container.ctrlport=7001 -Dnetserv.container.serveripv4=127.0.0.1 -Djava.security.policy=all.policy -Dnetserv.security.bindableports=1024 -Dnetserv.container.user=jae -classpath org.eclipse.osgi_3.6.0.v20100517.jar:netservlaunch .jar NetServ.launch.Main -console -clean
I have been trying to create an activity that behaves similar to my script, but without any success.I added all my archives.jar to my project the way of "Add External jars" and tryed to launch the main.class as it was another activity, using Intent, and passed the parameters using putExtra(), but on the other side, in the jar of the program, I cannot retrieve and use the needed parameters, because it is not an apk..
View 1 Replies
View Related
Dec 9, 2013
I have a thread on StackOverflow (titled: NoClassDefFoundError for Jersey 2.4.1 client in Android) but I thought I would reach out here in hope of getting a more specific/targeted audience group.I have followed instructions from other posts about the libs Android dependency fix but I still get the issue.
I am using Eclipse Juno, with an Android App targeting API 17. Basically I am getting a NoClassDefFoundError at runtime for the org. glassfish. jersey. model.internal.CommonConfig$1 class located in jersey-client-2.4.1.jar. This is when I just do a Run As... deploy from within Eclipse and it fails when I instantiate the CommonConfig class or one that depends on it internally. The start up log is given below:
[HIGH]12-10 12:25:20.657: I/dalvikvm(10170): Failed resolving Lorg/glassfish/jersey/model/internal/CommonConfig$1; interface 920 'Lcom/google/common/base/Function;'
12-10 12:25:20.657: W/dalvikvm(10170): Link of class 'Lorg/glassfish/jersey/model/internal/CommonConfig$1;' failed
12-10 12:25:20.657: E/dalvikvm(10170): Could not find class 'org.glassfish.jersey.model.internal.CommonConfig$ 1', referenced from method
[code]....
It doesn't seem to find a static inner class of CommonConfig. In the SO forum I tinkered with some options in ProGuard but I've come to learn that this isn't even used in the standard debug mode, only when you do a release build (Export from Eclipse). It would appear that something is happening with the class but I can't figure out why it would not be included if its parent is. Is there some kind of 'light' ProGuard process that goes on when a debug deploy is done? how to resolve this particular case of NoClassDefFoundError?
View 4 Replies
View Related
Mar 21, 2010
Somethings I'll have an? .xml file selected when I compile a project, only to have a? .out.xml generated. Deleting the file doesn't clear the error, and Eclipse won't compile the project. It just reports that your project contains errors. The solution is to go to Project/Clean. This will clear the error in the project and allow it to compile.
View 6 Replies
View Related
Aug 11, 2010
I can now get our Android project to talk to our non-Android project. But there's still an issue: I are trying to have an Android class call a non Android Hello World class. I tried compiling our non-Android Hello World class in a separate Eclipse workspace. I then packaged it into a jar. I imported that jar into our Android Hello World class.
I then called one of the methods in the non-Android Hello World class. When I ran the Android Hello World class as an Android application, the following runtime error occurred. Here are the Android debug logs:
08-11 09:07:56.764: ERROR/AndroidRuntime(333): FATAL EXCEPTION: main
08-11 09:07:56.764: ERROR/AndroidRuntime(333): java.lang.ExceptionInInitializerError
08-11 09:07:56.764: ERROR/AndroidRuntime(333): at com.hello2.hello2.onCreate(hello2.java:27)
08-11 09:07:56.764: ERROR/AndroidRuntime(333): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1047).....................
View 1 Replies
View Related
Jun 6, 2010
I have 2 android projects out of which I modified one to work as a library. I want the main project to refer to this library to perform few functions. While this scenario works just as expected, I want to introduce one more functionality. I want to link this library project with another just a java project which has code common to both Android and Blackberry applications. This second part however doesn't seem to work and throws "The application <appname> (<package name>) has stopped unexpectedly. Please try again" with a ForceClose button. I would greatly appreciate if someone can give a brief information on how to make this work.
View 2 Replies
View Related