Skip to content

Instantly share code, notes, and snippets.

View darinwilson's full-sized avatar

Darin Wilson darinwilson

View GitHub Profile
@darinwilson
darinwilson / art_crash_output
Created April 29, 2015 17:17
Output of ART crash when instantiating a RoundRect with RubyMotion Android
Start com.yourcompany.round_rect_crash/.MainActivity
--------- beginning of system
--------- beginning of main
I/com/yourcompany/round_rect_crash( 1607): creating RoundRect with Java
I/com/yourcompany/round_rect_crash( 1607): #<android.graphics.drawable.shapes.RoundRectShape:0x100019>
I/com/yourcompany/round_rect_crash( 1607): creating RoundRect with Ruby
E/art ( 1607): 0xb405ce80 SpaceTypeMallocSpace begin=0x12c00000,end=0x12e01000,limit=0x22c00000,size=2MB,capacity=96MB,non_growth_limit_capacity=256MB,name="main rosalloc space"]
E/art ( 1607): 0xb425ff60 allocspace main rosalloc space live-bitmap 3[begin=0x12c00000,end=0x22c00000]
E/art ( 1607): 0xb427f300 allocspace main rosalloc space mark-bitmap 3[begin=0x12c00000,end=0x22c00000]
E/art ( 1607): 0xb4050480 SpaceTypeImageSpace begin=0x6fec0000,end=0x70835000,size=9MB,name="/data/dalvik-cache/x86/system@framework@boot.art"]
@darinwilson
darinwilson / main_activity.rb
Last active August 29, 2015 14:18
Trying to open an Android class in RubyMotion
# throws NameError: uninitialized constant `Android'
class Android::App::Activity
def say_hello
puts "hello!"
end
end
class MainActivity < Android::App::Activity
def onCreate(savedInstanceState)
super
@darinwilson
darinwilson / request.java
Last active March 21, 2020 22:07
Java extension to get a POST request working with Volley in RubyMotion for Android
/*
* This assumes that you have a file called request.rb in the same directory, and that
* the file contains a subclass of Volley request object
*
* The code in this .java file gets added to the Java wrapper around our Ruby class at
* compile time. This contains a few shims to work around cases where RubyMotion is
* currently not generating correctly typed versions of these methods.
*
* http://hipbyte.myjetbrains.com/youtrack/issue/RM-724
*
@darinwilson
darinwilson / HashMapToHash.rb
Last active August 29, 2015 14:13
RubyMotion for Android utility that converts a java.util.HashMap instance to a Ruby hash
# Utility class that converts a java.util.HashMap instance to a Ruby Hash. RubyMotion will
# start supporting this out of the box at some point, but until then, this can be used
# as a workaround: http://hipbyte.myjetbrains.com/youtrack/issue/RM-725
#
# Usage:
# HashMapToHash.convert(hashmap)
#
# This supports nested hashes and should assure that all Java-based values are properly converted
# to their Ruby counterparts (i.e. java.lang.String => String).
#
@darinwilson
darinwilson / rm-android-hash.rb
Last active August 29, 2015 14:13
RubyMotion Android: can't convert java.util.HashMap to Ruby Hash
# Update: there's an issue open in RubyMotion for this, so hopefully it will get resolved soon.
#
# http://hipbyte.myjetbrains.com/youtrack/issue/RM-725
#
# In the meantime, here's a workaround: https://gist.github.com/darinwilson/26c8b573a65d8bc4c64b
# if you create a Ruby Hash...
ruby_hash = { foo: "bar" }
# ...you can call Ruby methods...
ruby_hash.has_key?(:foo)
@darinwilson
darinwilson / gemdoc.sh
Created November 16, 2014 04:29
Generate and open RDocs for any installed gem
#
# usage: gemdoc GEM_NAME
# eg: gemdoc rspec-mocks
#
gemdoc() {
gem rdoc $1 --rdoc
(cd `gem env gemdir`/doc/$1*; open rdoc/index.html)
}