HipByte / RubyMotionSamples

A collection of RubyMotion applications for code samples.
http://www.rubymotion.com
1.21k stars 341 forks source link

Android example error #52

Closed ruanwz closed 9 years ago

ruanwz commented 10 years ago

For the example States and Conference, rake device command failed.

/AndroidRuntime(  306): android.content.res.Resources$NotFoundException: Resource ID #0x0
E/AndroidRuntime(  306):    at android.content.res.Resources.getValue(Resources.java:1123)
E/AndroidRuntime(  306):    at android.content.res.Resources.loadXmlResourceParser(Resources.java:2312)
E/AndroidRuntime(  306):    at android.content.res.Resources.getLayout(Resources.java:939)
E/AndroidRuntime(  306):    at android.view.LayoutInflater.inflate(LayoutInflater.java:395)

Is it because some resource files are not included in the example, like the following lines:

Android::Widget::ArrayAdapter.new(self, Android::R::Layout::Simple_list_item_1, States.all)
markrickert commented 10 years ago

hmm... Android::R::Layout::Simple_list_item_1 is a buit-in layout.

ruanwz commented 10 years ago

Sorry, just found out that it is a built-in. But can you please let me know what the error means? Thanks! I am using api_version = 19, testing on android 4.4.4

  States git:(master) ✗ rake device
   Compile ./app/main_activity.rb
   Compile ./app/states.rb
   Compile ./app/wikipedia_activity.rb
    Create ./build/Development-19/lib/armeabi/libpayload.so
    Create ./build/Development-19/lib/armeabi/gdbserver
    Create ./build/Development-19/lib/armeabi/gdb.setup
    Create ./build/Development-19/AndroidManifest.xml
    Create ./build/Development-19/classes/com/yourcompany/states/MainActivity.class
    Create ./build/Development-19/classes/com/yourcompany/states/States.class
    Create ./build/Development-19/classes/com/yourcompany/states/WikipediaActivity.class
    Create ./build/Development-19/classes.dex
    Create ./build/Development-19/States.apk
      Sign ./build/Development-19/States.apk
     Align ./build/Development-19/States.apk
   Install ./build/Development-19/States.apk
4788 KB/s (814134 bytes in 0.166s)
     Start com.yourcompany.states/.MainActivity
--------- beginning of /dev/log/system
--------- beginning of /dev/log/main
E/art     ( 9048): Unrecognized option -XX:mainThreadStackSize=24K
>> E/AndroidRuntime( 9127): FATAL EXCEPTION: main
E/AndroidRuntime( 9127): Process: com.yourcompany.states, PID: 9127
E/AndroidRuntime( 9127): android.content.res.Resources$NotFoundException: Resource ID #0x0
E/AndroidRuntime( 9127):    at android.content.res.Resources.getValue(Resources.java:1123)
E/AndroidRuntime( 9127):    at android.content.res.Resources.loadXmlResourceParser(Resources.java:2312)
E/AndroidRuntime( 9127):    at android.content.res.Resources.getLayout(Resources.java:939)
E/AndroidRuntime( 9127):    at android.view.LayoutInflater.inflate(LayoutInflater.java:395)
E/AndroidRuntime( 9127):    at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:371)
E/AndroidRuntime( 9127):    at android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)
E/AndroidRuntime( 9127):    at android.widget.AbsListView.obtainView(AbsListView.java:2255)
E/AndroidRuntime( 9127):    at android.widget.ListView.makeAndAddView(ListView.java:1790)
E/AndroidRuntime( 9127):    at android.widget.ListView.fillDown(ListView.java:691)
E/AndroidRuntime( 9127):    at android.widget.ListView.fillFromTop(ListView.java:752)
E/AndroidRuntime( 9127):    at android.widget.ListView.layoutChildren(ListView.java:1630)
E/AndroidRuntime( 9127):    at android.widget.AbsListView.onLayout(AbsListView.java:2087)
E/AndroidRuntime( 9127):    at android.view.View.layout(View.java:14860)
E/AndroidRuntime( 9127):    at android.view.ViewGroup.layout(ViewGroup.java:4643)
E/AndroidRuntime( 9127):    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
E/AndroidRuntime( 9127):    at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
E/AndroidRuntime( 9127):    at android.view.View.layout(View.java:14860)
E/AndroidRuntime( 9127):    at android.view.ViewGroup.layout(ViewGroup.java:4643)
E/AndroidRuntime( 9127):    at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:374)
E/AndroidRuntime( 9127):    at android.view.View.layout(View.java:14860)
E/AndroidRuntime( 9127):    at android.view.ViewGroup.layout(ViewGroup.java:4643)
E/AndroidRuntime( 9127):    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
E/AndroidRuntime( 9127):    at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
E/AndroidRuntime( 9127):    at android.view.View.layout(View.java:14860)
E/AndroidRuntime( 9127):    at android.view.ViewGroup.layout(ViewGroup.java:4643)
E/AndroidRuntime( 9127):    at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2013)
E/AndroidRuntime( 9127):    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1770)
E/AndroidRuntime( 9127):    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1019)
E/AndroidRuntime( 9127):    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5725)
E/AndroidRuntime( 9127):    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
E/AndroidRuntime( 9127):    at android.view.Choreographer.doCallbacks(Choreographer.java:574)
E/AndroidRuntime( 9127):    at android.view.Choreographer.doFrame(Choreographer.java:544)
E/AndroidRuntime( 9127):    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
E/AndroidRuntime( 9127):    at android.os.Handler.handleCallback(Handler.java:733)
E/AndroidRuntime( 9127):    at android.os.Handler.dispatchMessage(Handler.java:95)
E/AndroidRuntime( 9127):    at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 9127):    at android.app.ActivityThread.main(ActivityThread.java:5086)
E/AndroidRuntime( 9127):    at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime( 9127):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
E/AndroidRuntime( 9127):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
E/art     ( 9413): dlopen("/data/data/com.storm.smart/libs/libbhdserver.so", RTLD_LAZY) failed: dlopen failed: library "/data/data/com.storm.smart/libs/libbhdserver.so" not found
E/art     ( 9893): dlopen("/data/data/com.storm.smart/libs/libbhdserver.so", RTLD_LAZY) failed: dlopen failed: library "/data/data/com.storm.smart/libs/libbhdserver.so" not found
jacklynrose commented 9 years ago

You need the android support jar file for this, should work fine once it's in there. You can see it being used in the Conference app (in vendor).

These layouts are part of that jar file. Issue with using it currently is this bug: http://hipbyte.myjetbrains.com/youtrack/issue/RM-605

ruanwz commented 9 years ago

Thanks! Will try again when that issue is fixed.

cactis commented 9 years ago

i run Conference app, got an error:

RubyMotionSamples/android/Conference$ rake device
   Compile ./app/about_fragment.rb
2014-10-02 17:13:26.610 ruby[72112:d0b] can't open BridgeSupport full file at path `vendor/android-support-v4.jar.bridgesupport': Error Domain=NSXMLParserErrorDomain Code=73 "Line 353: Unescaped '<' not allowed in attributes values
Line 353: attributes construct error
Line 353: Couldn't find end of Start Tag class
" UserInfo=0x67d3860 {NSLocalizedDescription=Line 353: Unescaped '<' not allowed in attributes values
Line 353: attributes construct error
Line 353: Couldn't find end of Start Tag class
}
rake aborted!
Command failed with status (1): [VM_PLATFORM=android VM_KERNEL_PATH="/Libra...]
/Library/RubyMotionPre/lib/motion/project/template/android.rb:59:in `block (2 levels) in <top (required)>'
/Library/RubyMotionPre/lib/motion/project/template/android.rb:50:in `each'
/Library/RubyMotionPre/lib/motion/project/template/android.rb:50:in `block in <top (required)>'
Tasks: TOP => device => build
(See full trace by running task with --trace)
ostholz commented 9 years ago

i got the same error. but after a 'rake clean', that works again.

ruanwz commented 9 years ago

After updated to rubymotion 3.6 and android 5.02. Now 2 demos are working now.