|
19 Apr 2010, 02:14
John C. Macal
(6 posts)
|
So completed the translate program and when i run i get a force close when i try to input i check Logcat and this is what it found:
04-19 02:11:21.010: INFO/ActivityManager(66): Start proc org.example.translate for activity org.example.translate/.Translate: pid=271 uid=10024 gids={3003} 04-19 02:11:21.180: DEBUG/dalvikvm(255): LinearAlloc 0×0 used 675676 of 4194304 (16%) 04-19 02:11:21.460: INFO/jdwp(271): received file descriptor 20 from ADB 04-19 02:11:21.670: DEBUG/ddm-heap(271): Got feature list request 04-19 02:11:23.420: INFO/ActivityManager(66): Displayed activity org.example.translate/.Translate: 2764 ms (total 2764 ms) 04-19 02:11:30.479: INFO/ARMAssembler(66): generated scanline__00000077:03515104_00001A01_00000000 [ 46 ipp] (68 ins) at [0×27fcc8:0×27fdd8] in 3123862 ns 04-19 02:11:32.310: WARN/KeyCharacterMap(271): No keyboard for id 0 04-19 02:11:32.320: WARN/KeyCharacterMap(271): Using default keymap: /system/usr/keychars/qwerty.kcm.bin 04-19 02:11:34.721: DEBUG/AndroidRuntime(271): Shutting down VM 04-19 02:11:34.731: WARN/dalvikvm(271): threadid=3: thread exiting with uncaught exception (group=0×4001aa28) 04-19 02:11:34.751: ERROR/AndroidRuntime(271): Uncaught handler: thread main exiting due to uncaught exception 04-19 02:11:34.811: ERROR/AndroidRuntime(271): java.lang.StringIndexOutOfBoundsException 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at java.lang.String.substring(String.java:1571) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at org.example.translate.Translate.getLang(Translate.java:160) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at org.example.translate.Translate.access$6(Translate.java:156) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at org.example.translate.Translate$3.run(Translate.java:142) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at android.os.Handler.handleCallback(Handler.java:587) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at android.os.Handler.dispatchMessage(Handler.java:92) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at android.os.Looper.loop(Looper.java:123) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at android.app.ActivityThread.main(ActivityThread.java:4203) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at java.lang.reflect.Method.invokeNative(Native Method) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at java.lang.reflect.Method.invoke(Method.java:521) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549) 04-19 02:11:34.811: ERROR/AndroidRuntime(271): at dalvik.system.NativeStart.main(Native Method) 04-19 02:11:34.891: INFO/Process(66): Sending signal. PID: 271 SIG: 3 04-19 02:11:34.891: INFO/dalvikvm(271): threadid=7: reacting to signal 3 04-19 02:11:34.891: ERROR/dalvikvm(271): Unable to open stack trace file ’/data/anr/traces.txt’: Permission denied 04-19 02:11:39.360: INFO/Process(271): Sending signal. PID: 271 SIG: 9 04-19 02:11:39.411: INFO/ActivityManager(66): Process org.example.translate (pid 271) has died. 04-19 02:11:39.440: INFO/WindowManager(66): WIN DEATH: Window{43813440 org.example.translate/org.example.translate.Translate paused=false} 04-19 02:11:39.629: WARN/UsageStats(66): Unexpected resume of com.android.launcher while already resumed in org.example.translate 04-19 02:11:40.040: WARN/InputManagerService(66): Got RemoteException sending setActive(false) notification to pid 271 uid 10024 04-19 02:11:40.639: DEBUG/dalvikvm(174): GC freed 2312 objects / 159920 bytes in 505ms
|
|
19 Apr 2010, 20:15
Ed Burnette
(1316 posts)
|
To debug this I’d print out the value of several of the variables in the getLang() method:
String result = spinner.getSelectedItem().toString();
Log.d("Translate", "item = " + spinner.getSelectedItem()
+ " , " + result = " + result);
int lparen = result.indexOf('(');
int rparen = result.indexOf(')');
Log.d("lparen = " + lparen + " , rparen = " + rparen);
result = result.substring(lparen + 1, rparen);
You may need to add an “import android.util.Log;” in the import block near the top of the file. Alternatively, if you’re comfortable in the debugger just set a breakpoint at the beginning of getLang() and step through it, looking at those variable values.
Either the selected item isn’t what it’s supposed to be, or the string value of that item isn’t what it’s supposed to be. If the former, check that the setSelection() calls in setAdapters() are done correctly. If the latter, check the languages array in res/values/arrays.xml to make sure they all are formatted like this:
<item>English (en)</item>
In that one, for example, the “en” is the language code that getLang() is trying to extract.
|
|
15 Jul 2010, 15:03
Magnus Karlsson
(1 post)
|
Hi! First of all I want to thank for a great book! Second… I have a problem… I tried to do the Tranlate program but keep getting this error, I`ve even copied all code from the book’s website.
07-15 14:59:08.437: DEBUG/TranslateTask(631): doTranslate(tree, en, fr) 07-15 14:59:08.867: ERROR/TranslateTask(631): IOException 07-15 14:59:08.867: ERROR/TranslateTask(631): java.net.UnknownHostException: Host is unresolved: ajax.googleapis.com:80 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.net.Socket.connect(Socket.java:1038) 07-15 14:59:08.867: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:62) 07-15 14:59:08.867: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpCo… 07-15 14:59:08.867: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTP… 07-15 14:59:08.867: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect… 07-15 14:59:08.867: ERROR/TranslateTask(631): at se.example.translate.TranslateTask.doTranslate(TranslateTask.java:69) 07-15 14:59:08.867: ERROR/TranslateTask(631): at se.example.translate.TranslateTask.run(TranslateTask.java:29) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561) 07-15 14:59:08.867: ERROR/TranslateTask(631): at java.lang.Thread.run(Thread.java:1096) 07-15 14:59:08.867: DEBUG/TranslateTask(631): -> returned (Translation error) 07-15 14:59:08.917: DEBUG/TranslateTask(631): doTranslate((Translation error), fr, en) 07-15 14:59:09.018: ERROR/TranslateTask(631): IOException 07-15 14:59:09.018: ERROR/TranslateTask(631): java.net.UnknownHostException: Host is unresolved: ajax.googleapis.com:80 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.net.Socket.connect(Socket.java:1038) 07-15 14:59:09.018: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:62) 07-15 14:59:09.018: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpCo… 07-15 14:59:09.018: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTP… 07-15 14:59:09.018: ERROR/TranslateTask(631): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect… 07-15 14:59:09.018: ERROR/TranslateTask(631): at se.example.translate.TranslateTask.doTranslate(TranslateTask.java:69) 07-15 14:59:09.018: ERROR/TranslateTask(631): at se.example.translate.TranslateTask.run(TranslateTask.java:34) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561) 07-15 14:59:09.018: ERROR/TranslateTask(631): at java.lang.Thread.run(Thread.java:1096) 07-15 14:59:09.018: DEBUG/TranslateTask(631): -> returned (Translation error) 07-15 14:59:10.837: DEBUG/dalvikvm(118): GC_EXPLICIT freed 884 objects / 50152 bytes in 167ms
|
|
16 Jul 2010, 19:23
Ed Burnette
(1316 posts)
|
It requires an active Internet data connection, with no firewalls in between you and the google server. Try entering this address in the web browser on your phone:
http://ajax.googleapis.com/nonesuch
If you get an error that says “The URL /nonesuch was not found on this server”, then your connection is working. If you get a different error, like a host not found error, then there’s something wrong with your Internet data connection.
|
| |
You must be logged in to comment
|