Giter Site home page Giter Site logo

rhomobile / rhodes Goto Github PK

View Code? Open in Web Editor NEW
1.0K 116.0 237.0 1.58 GB

The Rhodes framework is a platform for building locally executing, device-optimized mobile applications for all major smartphone devices.

Home Page: http://tau-platform.com/

License: MIT License

Ruby 15.26% Shell 0.04% NSIS 0.07% HTML 1.60% CSS 0.56% JavaScript 1.60% C++ 14.73% Java 5.88% C 54.00% Objective-C 4.63% C# 0.62% Objective-C++ 0.42% QMake 0.10% Makefile 0.32% Perl 0.01% Assembly 0.01% GAP 0.07% Batchfile 0.10% XSLT 0.01% MATLAB 0.01%

rhodes's Introduction

Build Status

Build Status

Build status

Current state of Rhomobile solution

Currently Rhomobile solution supported and improved by TAU Technologies. For questions on commercial support contact contact mail or reach out to the TAU Technologies website.

Current actual version is Rhomobile Suite 7.6. Download RMS 7.6.0

Actual documentation located on RMS 7.5 documentation

RhoMobile versions

RhoMobile has a mainstream development branch which is forked for stable releases and further patches for them. Every major release is named by MAJOR.MINOR numbers with separate branch created for it ( for instance 6-1-stable ). After stable version is released patches are applied to it with increased PATCH number as MAJOR.MINOR.PATCH. Patches may include bug fixes or back porting of some features ( new platforms support etc ). New functional features are usually not included to patches for previous releases. Version naming is mostly based on Semantic Versioning v2 spec ( https://semver.org/spec/v2.0.0.html ) with some differences.

Current development builds versions always have increased MINOR number compared to already released stable version. Only latest development build usually should be actual for developers who want to use all latest features. For other users most recent stable release with applied patches is recommended.

Development builds does not have to end up in a stable branch. Instead, minor version number may be increased after certain amount of features is accumulated.

Development, Alpha and Beta releases have corresponding indication after PATCH value.

Example of RhoMobile release tree ( just for reference, it may not correspond to actual releases ):

6.1.0
  |  \
  |   6.1.1
  |   |
  |   6.1.2 - Previous supported stable/patched release. May lack some latest features.
  |
7.0.0.dev1 - obsolete development build. Not recommended for use.
  |
7.0.0.dev2 - obsolete development build. Not recommended for use.
  |
7.0.0.alphaX - alpha releases for 7.0. Not recommended for use.
  |
7.0.0.betaX  - beta releases for 7.0. Not recommended for use.
  |
7.0.0 - initial 7.0 stable release
  | \
  |  7.0.1 - Latest stable/patched release. Recommended for most users.
  |
7.1.0.devX - Latest development release. Not recommended for production but contains all recent features.

Installation

Windows First-time Install (32- and 64-bit) - How to install RhoMobile Suite on Windows (32- and 64-bit).

Mac OS X First-time Install - How to install RhoMobile Suite on Mac OS.

Building apps

Build for Android - How to build apps for Android.

Build for iOS - How to build apps for iOS.

Building for Windows - How to build apps for Windows.

Building for Windows ME/CE - How to build apps for Windows Mobile.

Building for Windows 10(UWP) - How to build apps for Windows 10(UWP).

RhoConnect Push Synchronization

Introduction to Push

Set up Google Cloud Messaging on client and server for Rhodes Android Device - Setting Up RhoConnect Push-Based Synchronization with Google Cloud Messaging.

Set up Apple Push Notification Service on client and server for Rhodes iOS Device - Setting Up RhoConnect Push-Based Synchronization with Apple Push Notification Service.

Set up RhoConnect Push Service on client and server for Rhodes Android and Windows Mobile/CE Devices - Setting Up for RhoConnect Push Service on Client Application for Windows Mobile/CE Devices.

Windows Mobile/CE Docs

Dependent Include Files - Critical files that must be present for successfully targeting Windows Mobile/CE devices, and where and how to get them.

Android Docs

Guidelines To Support Barcode API On Android JellyBean Devices - Lists the Zebra Android devices capable of barcode scanning, their OS image versions and steps for activating the feature.

Repositories Released as Open Source

Clone these repo(s) as required for your needs to generate a copy of the open source code to the local development machine.

Rhodes

RhoConnect

RhoConnect Client

RhoConnect Push

RhoConnect Push Service

RhoStudio

RhoInstaller

RMS-Testing

rhodes's People

Contributors

abhineetagarwal avatar alex-epifanoff avatar antonantonov avatar antonv avatar cfh463 avatar debrajdhar avatar dimahts990 avatar dipspb avatar dmitrys avatar dmsck avatar dplrnbot avatar fgqw68 avatar fkgm76 avatar hramovnik avatar larsburgess avatar lexis-t avatar lnsimha avatar malayap47 avatar mmalinin avatar mzverev avatar npj473 avatar nrpj67 avatar pkang avatar rhtv43 avatar rognar avatar stanislavvolodarskiy avatar timashev avatar vgraupera avatar vmd763 avatar vmusulainen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rhodes's Issues

Browser crash on Android 2.2

When testing "Multinasser" project (from RhoHub, user kaspernj) on LG Optimus 2X, Android 2.2 and Rhodes 3.1.0 (works perfectly with Rhodes 3.0.2) the app suddenly crashes with the following in the log:

V/webcore (31835): WEBKIT_DRAW arg1=0 arg2=0 obj=null
V/webcore (31835): webkitDraw start
V/webcore (31835): webkitDraw NEW_PICTURE_MSG_ID
V/webview (31835): NEW_PICTURE_MSG_ID
V/webview (31835): NEW_PICTURE_MSG_ID {165,23,168,56}
V/webview (31835): SYNC_SCROLL_TO_MSG_ID
V/webcore (31835): SYNC_SCROLL arg1=0 arg2=1 obj=null
V/webcore (31835): REPLACE_TEXT arg1=0 arg2=1 obj=android.webkit.WebViewCore$ReplaceTextData@46d0bee8
V/webcore (31835): PASS_TO_JS arg1=4 arg2=0 obj=android.webkit.WebViewCore$JSKeyData@46d0bf58
V/webcore (31835): PASS_TO_JS arg1=5 arg2=0 obj=android.webkit.WebViewCore$JSKeyData@46c5fbc8
V/webcore (31835): WEBKIT_DRAW arg1=0 arg2=0 obj=null
V/webcore (31835): webkitDraw start
V/webcore (31835): webkitDraw NEW_PICTURE_MSG_ID
V/webview (31835): NEW_PICTURE_MSG_ID
V/webview (31835): NEW_PICTURE_MSG_ID {149,23,299,59}
V/webview (31835): SYNC_SCROLL_TO_MSG_ID
V/webcore (31835): SYNC_SCROLL arg1=0 arg2=1 obj=null
I/DEBUG (31037): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG (31037): Build fingerprint: 'lge/lge_star/p990/p990:2.2.2/FRG83G/lgp990-V10d.2ED2ED2216:user/release-keys'
I/DEBUG (31037): pid: 31835, tid: 31835 >>> com.rhomobile.multinasserne <<<
I/DEBUG (31037): signal 11 (SIGSEGV), fault addr 193c54aa
I/DEBUG (31037): r0 00678ec0 r1 becd712c r2 becd7128 r3 ab20fdef
I/DEBUG (31037): r4 ab210468 r5 becd7154 r6 00678ec0 r7 00000000
I/DEBUG (31037): r8 00605220 r9 becd71a0 10 00000000 fp 00678ec0
I/DEBUG (31037): ip ab210510 sp becd7128 lr ab194664 pc 193c54aa cpsr 20000030
I/DEBUG (31037): d0 7149f2ca43250000 d1 432480007149f2ca
I/DEBUG (31037): d2 435f0000000000df d3 431500004395aaab
I/DEBUG (31037): d4 426d555543155556 d5 3f2aaaabc24aaaab
I/DEBUG (31037): d6 426c00003f2aaaab d7 000000a542dd0000
I/DEBUG (31037): d8 000000000000006e d9 0000000000000000
I/DEBUG (31037): d10 0000000000000000 d11 0000000000000000
I/DEBUG (31037): d12 0000000000000000 d13 0000000000000000
I/DEBUG (31037): d14 0000000000000000 d15 0000000000000000
I/DEBUG (31037): scr 20000012
I/DEBUG (31037):
I/DEBUG (31037): #00 pc 193c54aa
I/DEBUG (31037): #1 pc 00094660 /system/lib/libskia.so
I/DEBUG (31037): #2 pc 0005a0f8 /system/lib/libskia.so
I/DEBUG (31037): #03 pc 0006d6f8 /system/lib/libskia.so
I/DEBUG (31037):
I/DEBUG (31037): code around pc:
I/DEBUG (31037): 193c5488 ffffffff ffffffff ffffffff ffffffff
I/DEBUG (31037): 193c5498 ffffffff ffffffff ffffffff ffffffff
I/DEBUG (31037): 193c54a8 ffffffff ffffffff ffffffff ffffffff
I/DEBUG (31037): 193c54b8 ffffffff ffffffff ffffffff ffffffff
I/DEBUG (31037): 193c54c8 ffffffff ffffffff ffffffff ffffffff
I/DEBUG (31037):
I/DEBUG (31037): code around lr:
I/DEBUG (31037): ab194644 e08f4004 e1a05001 0a000020 e5933000
I/DEBUG (31037): ab194654 e28d1004 e1a0200d e1a0e00f e593f024
I/DEBUG (31037): ab194664 e3500000 0a000016 e59f107c e3a03000
I/DEBUG (31037): ab194674 e0840001 e59d1004 e2804004 e59d0000
I/DEBUG (31037): ab194684 ea000003 e2833001 e284400c e3530018
I/DEBUG (31037):
I/DEBUG (31037): stack:
I/DEBUG (31037): becd70e8 000001c1
I/DEBUG (31037): becd70ec 00000096
I/DEBUG (31037): becd70f0 000000a5
I/DEBUG (31037): becd70f4 becd72c8 [stack]
I/DEBUG (31037): becd70f8 becd71a0 [stack]
I/DEBUG (31037): becd70fc becd71a0 [stack]
I/DEBUG (31037): becd7100 00605220 [heap]
I/DEBUG (31037): becd7104 ab210468 /system/lib/libskia.so
I/DEBUG (31037): becd7108 000000e0
I/DEBUG (31037): becd710c ab12de44 /system/lib/libskia.so
I/DEBUG (31037): becd7110 ab210468 /system/lib/libskia.so
I/DEBUG (31037): becd7114 0000006f
I/DEBUG (31037): becd7118 000001c1
I/DEBUG (31037): becd711c 00000001
I/DEBUG (31037): becd7120 df0027ad
I/DEBUG (31037): becd7124 00000000
I/DEBUG (31037): #1 becd7128 00000000
I/DEBUG (31037): becd712c ab12de7c /system/lib/libskia.so
I/DEBUG (31037): becd7130 008d3950 [heap]
I/DEBUG (31037): becd7134 008d3950 [heap]
I/DEBUG (31037): becd7138 ab210468 /system/lib/libskia.so
I/DEBUG (31037): becd713c ab15a0fc /system/lib/libskia.so
V/webcore (31835): WEBKIT_DRAW arg1=0 arg2=0 obj=null
V/webcore (31835): webkitDraw start
V/webcore (31835): webkitDraw NEW_PICTURE_MSG_ID
V/webcore (31835): SAVE_DOCUMENT_STATE arg1=0 arg2=0 obj=android.webkit.WebViewCore$CursorData@46c5fbe0
V/webcore (31835): WEBKIT_DRAW arg1=0 arg2=0 obj=null
V/webcore (31835): webkitDraw start
V/webcore (31835): webkitDraw NEW_PICTURE_MSG_ID
I/BootReceiver( 1111): Copying /data/tombstones/tombstone_00 to DropBox (SYSTEM_TOMBSTONE)

The app boots. When starting to enter stuff in the single shown textbox slowly (1 keystroke each 2 seconds, no holding) the app crashes.

find with conditions bug when qouting '?'

There is a bug with find when specifying a condition when I put the quotes around the ?.

model = Model.find(:first, :conditions => ["slug = '?'", slug])

returns nil even though the record exists, because if I then try to create it fails with a uniqueness constraint.

Model.create({:slug => slug})

I notice the following in the log output when doing the find (notice the extra space in the condition)

I/APP     (  281): I 05/19/2011 20:02:26:219 0020af00                  APP| condition_str : slug = 'arts '
I/APP     (  281): I 05/19/2011 20:02:26:305 0020af00                  APP| exception when running query: could not execute statement: 19; Message: column slug is not unique
I/APP     (  281): I 05/19/2011 20:02:26:316 0020af00                  APP| create Exception: #<ArgumentError: could not execute statement: 19; Message: column slug is not unique>
I/APP     (  281): I 05/19/2011 20:02:26:319 0020af00                  APP| App error: could not execute statement: 19; Message: column slug is not unique
I/APP     (  281):  lib/rhom/rhom_db_adapter.rb:109:in `execute'
I/APP     (  281): lib/rhom/rhom_db_adapter.rb:109:in `_execute_sql'
I/APP     (  281): lib/rhom/rhom_db_adapter.rb:98:in `execute_sql'
I/APP     (  281): lib/rhom/rhom_db_adapter.rb:246:in `insert_into_table'
I/APP     (  281): lib/rhom/rhom_object_factory.rb:1458:in `create'
I/APP     (  281): lib/rhom/rhom_object_factory.rb:1345:in `create'

However, if I move the qoutes around like such:

model = Model.find(:first, :conditions => ["slug = ?", "'#{slug}'"])

And the condition string log output (notice NO extra space in the condition):

I/APP     (  279): I 05/20/2011 11:21:36:325 002d12e0                  APP| condition_str : slug = 'arts'

The record is found and therefore I can do an update instead of a create.

BB6.0 FullBrowser does not parse local resources

Following code works fine on bb6.0 with full_browser off, whereas no resource gets loaded if option is on.

Investigation shows that BrowserAdapter5$RhoProtocolController.handleResourceRequest does not handle well local resource (with no server:port information in url).

<script type="text/javascript" charset="uft-8" src="/public/js/jquery-1.5.min.js"></script> <script type="text/javascript" charset="utf-8" src="/public/js/jquery.mobile-1.0a3.min.js">/script> <%= @content %>

Here is my index.erb

Header

Content

Footer

AsyncHTTP should allow PUT file uploads

AsyncHttp.upload_file is hardcoded to use POST and ignores the http_command parameter, and AsyncHttp.get/post do not evaluate the multipart parameter. Thus there is no way to upload a file via PUT.

The easiest solution would be to evaluate the http_command parameter.

changed_values is being written although sync_type is set to none

We have found an issue with rhodes-2.0.2 on the windows mobile platform where the data (using FixedSchema) after Model.save method is being duplicated to changed_values each save. With large volumes of data this table gets very large and program stops working.

Cannot find your Rhodes gem or source path.

I have placed the path for ruby also created env varaiable but it showing error below

If you have the sdk on your path or have installed the gem this
can be resolved by running 'set-rhodes-sdk'

You can also set this manually by modifying your build.yml or
setting the environment variable RHO_HOME

Iphone OS5 problem with AsyncHttp API call

We have an application which should download map archive in zip, and It seams that AsyncHttp API
download_file(:url, :headers, :filename, :callback, :callback_param) is unstable in IOS5, because we are getting a lot of

is not very stable untill now, and it gives suprising HTTP connection error.
The deal is that even when if we put :ssl_verify_peer – (optional) Verify SSL certificates, true by default to false.

Readme does not list Android, Symbian, etc.

My very first impression of this is that it does not support Android. It was only after further investigation that I discovered that it was indeed supported.

This readme does not do the product justice.

Rhodes leaves rhom database inoperable when failing to load prepopulated database on startup

Occurs in apps that include a prepopulated database in the db/res/db folder. When the app fails to extract the database from the package (like for example when the sqlite file is larger than 1 mb in Android <2.3 devices), rhodes is unable to "repair" the database as an empty one and there seems to be no runtime way to do this either for the app.

The database is completely broken, not even the sources table is present in these cases:

I/APP ( 251): I 09/28/2011 14:44:27:099 00000108 APP| exception when running query: could not prepare statement: 1; Message: no such table: sources

I/APP ( 251): I 09/28/2011 14:44:27:101 00000108 APP| exception when init_db_sources: could not prepare statement: 1; Message: no such table: sources; Trace:lib/rhom/rhom_db_adapter.rb:116:in `execute'

I/APP ( 251): lib/rhom/rhom_db_adapter.rb:116:in `_execute_sql'

I/APP ( 251): lib/rhom/rhom_db_adapter.rb:105:in `execute_sql'

I/APP ( 251): lib/rhom/rhom_db_adapter.rb:240:in `select_from_table'

I/APP ( 251): lib/rho/rho.rb:748:in `init_db_sources'

I/APP ( 251): lib/rho/rho.rb:540:in `block in init_sources'

I/APP ( 251): lib/rho/rho.rb:536:in `each'

I/APP ( 251): lib/rho/rho.rb:536:in `init_sources'

I/APP ( 251): lib/rho/rho.rb:420:in `load_all_sync_sources'

I/APP ( 251): lib/rho/rho.rb:405:in `load_all_sources'

I/APP ( 251): apps/app/application.rb:28:in `initialize'

I/APP ( 251): lib/rho/rho.rb:216:in `new'

I/APP ( 251): lib/rho/rho.rb:216:in `get_app'

I/APP ( 251): lib/rho/rho.rb:127:in `init_app'

I/APP ( 251): I 09/28/2011 14:44:27:109 00000108 APP| init_db_sources

Suggestion: Ideally, there would be a way to check if the database was loaded succesfully and in case that it wasn't there would be a way to reset it to a clean database that could be populated from the existing models in the app for that partition.

relationship between 2 tables in Rhodes

I just start learning Rhodes, i think in difficult when using FixedSchema with database(SQLite) that have many tables.
Ex. I have 2 tables:

  1. Class: Class_ID, Class_Name.
  2. Students: Student_ID, Student_Name, Student_Address, Student_ClassID.
    First form will view list class, i try when selected a class it will get and view all students in that class.
    I try using belongs_to :Class_ID, 'Class' but not success.
    My question is: How to select all students in a class?

Pinch Zoom Not Working

It Seems in Rhodes the pinch zoom(zoom scaling on 2 finger touch) is not working on at least android devices with pinch zoom support.

Bar of black dead space at the bottom of the screen when disabling the toolbar

Added the AppApplication.initialize() extension with @@ToolBar = nil to completely disable the toolbar. That does disable the toolbar, but it leaves a dead black area at the bottom of the canvas.

Disabling the toolbar should not only hide it, but allow the real-estate to by used as part of the canvas.

Testing Rhodes v1.4.2, 1.5.0 on iPhone SDK 3.0.

WebSockets

How can use a websocket client like SocketI/O with rhodes?

iOS build errors - md5, digest, sha1

mework EventKit -o /Users/jon/.rvm/gems/ruby-1.8.7-p352@rhodes320-beta8-7773/gems/rhodes-3.2.0.beta.8/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/Objects-normal/armv7/rhorunner
ld: warning: ignoring file /Users/jon/.rvm/gems/ruby-1.8.7-p352@rhodes320-beta8-7773/gems/rhodes-3.2.0.beta.8/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/libdigest.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file /Users/jon/.rvm/gems/ruby-1.8.7-p352@rhodes320-beta8-7773/gems/rhodes-3.2.0.beta.8/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/libdigest-md5.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file /Users/jon/.rvm/gems/ruby-1.8.7-p352@rhodes320-beta8-7773/gems/rhodes-3.2.0.beta.8/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/libdigest-sha1.a, file was built for archive which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
"_Init_md5", referenced from:
_Init_Extensions in librhorubylib.a(extensions.o)
"_Init_digest", referenced from:
_Init_Extensions in librhorubylib.a(extensions.o)
"_Init_sha1", referenced from:
_Init_Extensions in librhorubylib.a(extensions.o)
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status

THIS TOOL IS DEPRECATED

when i try to run rake run:android. i got this error

rm -rf /home/nicolas/projects/upscrn-rhodes/bin/tmp/lib
Building APK file
PWD: /usr/lib/ruby/gems/1.8/gems/rhodes-2.1.0
CMD: /home/nicolas/Documentos/android-sdk-linux_x86/tools/apkbuilder /home/nicolas/projects/upscrn-rhodes/bin/target/upscrn-rhodes-tmp.apk -z /home/nicolas/projects/upscrn-rhodes/bin/rhodes.ap_ -f /home/nicolas/projects/upscrn-rhodes/bin/classes.dex

THIS TOOL IS DEPRECATED. See --help for more information.

the problem is that apkbuilder is an old tool.

Older (pre 1.9.2-p290) and duplicate extensions

A few extensions were not update to Ruby 1.9.2-p290 versions. I don't know if this was intentional or an oversight.

As well, duplicate files exist in net-http because new timeout and thread extensions were added. Again, I don't know if this was intentional or not. The files in net-http corresponding to the new extensions were NOT updated to 1.9.2-p290, even though the new extensions were.

I'm concerned that having two copies of the same library with different code could cause problems!

I noted some other out-of-date libraries, but these generally are ones that are modified by Rhodes.

Impact of removing duplicates would be documentation change requiring the extensions all be named in build.yml
when using net-http.

Duplicate libraries inside of net-http - consider for deletion?

thread.rb, monitor.rb (now in thread extension, and out-of-date in net-http)
timeout.rb (now in timeout extension and out-of-date in net-http)
uri.rb (has been in uri extension for some time)

Out-of-date extensions (confirmed with compare and lack of "migrate to Ruby 1.9.2-p290 checkin comment)

thread (thread.rb, monitor.rb)
fileutils
set
uri

Out-of-date, but have Rhodes modifications

These seem out of date, but have Rhodes mods, would need to determine impact

crypt
json
rexml

Support for Xcode 4.3.1

When running with Xcode 4.3.1, you get an error:
No such file or directory - /Developer/usr/bin/xcodebuild

Since Xcode 4.3, xcodebuild is located at /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild.
The best way to find the right home for xcodebuild is not to assume it is "/Developer" but to use the "xcode-select -print-path" command.

rake run:android fails on Linux

$: rake run:android
cd /home/steven/.rvm/gems/ruby-1.9.0-p0/gems/rhodes-2.2.0
rake aborted!
undefined method `+' for nil:NilClass

(See full trace by running task with --trace)

Ubuntu 10.04
Ruby 1.9.2 (and 1.8.7)
Rhodes 2.2.0 (and 2.1.0)
Android NDK revision 4b (and 3)

Switch on/off Pinch/Zoom Support from controller

On HTC devices the pinch-zoom control is not working, when you try to disable the zoom via metaview , because of the bug of HTC castomised browser.
In case you switch off the pinch zoom via

It is still on. You need somehow a mechanism for switching off the pinch zoom support, depending on a device , in a main controller I thing, or at least on rhoconfig.txt

set-rhodes-sdk scrambles build.yml

In 3.2.0beta8, set-rhodes-sdk scrambles my build.yml. (I've ***'d out some items for security)

Workaround is just don't use set-rhodes-sdk, update manually.

Before running set-rhodes-sdk

sdk: /Users/jon/.rvm/gems/ruby-1.8.7-p352@rhodes320-watusi/gems/rhodes-3.2.0.beta.4
sdkversion: 3.2.0
name: Peepr
version: 1.0
vendor: rhomobile
build: debug
bbver: 4.6
wmsdk: Windows Mobile 6 Professional SDK (ARMV4I)
applog: rholog.txt
capabilities:

  • gps
  • network_state
    extensions:
  • json
  • set
  • rexml
  • digest
  • digest-md5
  • digest-sha1
  • securerandom
  • resolv
  • thread
  • timeout
  • uri
  • net-http
  • xmpp4r
    excludedirs:
    iphone:
- public/css/sass
- public/sounds/source
- public/test
- public/css/android.css
- public/css/blackberry.css
- public/mobile/windows_mobile.css
- public/images/android
- app/test

android:
emulator: Droid_Incredible
version: 2.1
minSDK: 4
iphone:
configuration: Release
sdk: iphonesimulator4.3
provisionprofile: *****
codesignidentity: iPhone Developer
entitlements:
BundleIdentifier: com.watusiware.peepr
BundleURLScheme: peepr
emulatortarget: iphone
wp:
productid: *****
symbian:
uid: *****

After running set-rhodes-sdk


extensions:

  • json
  • set
  • rexml
  • digest
  • digest-md5
  • digest-sha1
  • securerandom
  • resolv
  • thread
  • timeout
  • uri
  • net-http
  • xmpp4r
    name: Peepr
    excludedirs:
    iphone:
    • public/css/sass
    • public/sounds/source
    • public/test
    • public/css/android.css
    • public/css/blackberry.css
    • public/mobile/windows_mobile.css
    • public/images/android
    • app/test
      capabilities:
  • gps
  • network_state
    wp:
    productid: ******
    bbver: 4.6
    android:
    version: 2.1
    minSDK: 4
    emulator: Droid_Incredible
    sdk:
    applog: rholog.txt
    build: debug
    wmsdk: Windows Mobile 6 Professional SDK (ARMV4I)
    version: 1.0
    symbian:
    uid: *****
    vendor: rhomobile
    sdkversion: 3.2.0
    iphone:
    BundleURLScheme: peepr
    provisionprofile: *****
    BundleIdentifier: com.watusiware.peepr
    sdk: iphonesimulator4.3
    emulatortarget: iphone
    entitlements:
    codesignidentity: iPhone Developer
    configuration: Release

app generator and set-rhodes-sdk comments-out sdk: in build.yml

In 3.2.0 the app generator puts a comment character in front of sdk: in build.yml

Not sure if this is intentional. Will Rhodes find the sdk even though it is not specified? I noticed some new code in Rakefile that might be related to this? I was able to build for simulator even with this line commented. I didn't notice till I tried to go into the build.yml file in RhoStudio to modify it so I can test a newly-created app on a device.

As a consequence, though, Rhodes editor in RhoStudio can't parse the file. (Need >1.1 RhoStudio?)

Workaround is simply un-comment the sdk: line using standard editor.

link_to/url_for doesn't support arbritary parameters

link_to("some title", :action => "show", :id => "5", :other_param => "data")

The 'other_param' does not get passed through to the controller action!

Coming from rails, it's a bit surprising that it doesn't just tack on the extra params, instead it selectively picks the params it passes through.

The documentation should at least state what the supported params are.

System.exit is not working on Android when accessed through a link

The System API command "System.exit" has stopped working on Android when accessed through a link. I know it last worked in Rhodes 3.1.0, but since Rhodes 3.2.0 it throws the following exception (the stacktrace is from a Rhodes 3.2.2 application):

RhodesService | java.lang.RuntimeException:
Can't create handler inside thread that has not called Looper.prepare()
    at android.os.Handler.<init>(Handler.java:121)
    at com.rhomobile.rhodes.RhodesApplication.stop(RhodesApplication.java:109)
    at com.rhomobile.rhodes.RhodesService.exit(RhodesService.java:622)
    at dalvik.system.NativeStart.run(Native Method)

I have noticed that there only is a problem when the System.exit command is accessed through a link such as the cases below, whereas it works perfectly through render :back. It should also be noted that the menu action :close still works perfectly as well.

<a href="<%=url_for :controller => :Home, :action => :index, :query => {:act => 'exit'}%>"> ... </a>

<a href="<%=url_for :controller => :Home, :action => :exit %>"> ... </a>

def index
    action = @params['act']
    if action == 'exit'
      exit
    else
       # Do something else
       render :back => :exit
    end
end

def exit
  System.exit
end

call, email, sms APIs for Android not working(v3.0.0)

I am using Rhodes v3.0.0 and the call, email, sms APIs for Android are not working. When I call those APIs the phone vibrates and the app crashes.
I tried to build the app with Rhodes v2.4.1 and it works perfectly fine.

screen rotation callback error in iphone

On screen rotation, the callback is returning Width=320 and Height=480 no matter how the phone/simulator is rotated(landscape/portrait).
I am using Rhodes v2.4.1.

Sometimes rake run:iphone produces a build that is not executable

Added this after line 866 in iphone.rake

     chmod 0744, File.join($simrhodes, "rhorunner.app", "rhorunner")

No idea why. Also my simulator doesn't always load. Seemed at first this was the reason but now I still experience the simulator not loading at the end of the rake task even though the app is executable. No clear pattern yet. Sometimes it works, other times not.

Rhodes plays local video issue

In http://developer.apple.com/library/ios/#/library/safari/documentation/AppleApplications/Reference/SafariWebContent/CreatingVideoforSafarioniPhone/CreatingVideoforSafarioniPhone.html%23//apple_ref/doc/uid/TP40006514-SW1

ios’ mobile safari require “HTTP servers hosting media files for iPhone OS must support byte-range requests, which iPhone OS uses to perform random access in media playback. ”

Maybe this cause rhodes couldn't play local video, or will you supply a demo of playing local video in api sample project?

201 response is marked as error

{"back"=>"", "email"=>"", "rho_callback"=>"1", "status"=>"error", "error_code"=>"2", "http_error"=>"201", "cookies"=>"_ ...........

Due to html standard 201 response is not an error

201 Created

The request has been fulfilled and resulted in a new resource being created. The newly created resource can be referenced by the URI(s) returned in the entity of the response, with the most specific URI for the resource given by a Location header field. The response SHOULD include an entity containing a list of resource characteristics and location(s) from which the user or user agent can choose the one most appropriate. The entity format is specified by the media type given in the Content-Type header field. The origin server MUST create the resource before returning the 201 status code. If the action cannot be carried out immediately, the server SHOULD respond with 202 (Accepted) response instead.

render_transition and tabbar

When I use 'render_transition' in a HTTP callback it renders the view in the active tab and not on the tab where the Webservice was initiated.

In the simple example app posted here (http://www.box.net/shared/j3nga5l1hu), two controllers M1 and M2 are in a tabbar. If you click on the 'Start webservice' button in the tab1 and switch to tab2 and wait, you will see the 'render_transition' initiated view (from tab1 controller's webservice callback) appear inside tab2. If you switch to Tab1, it will still be showing the 'waiting' screen.

rexml: Encoding::UTF-8 missing

In 3.2.0 beta 8, I'm getting this missing constant. Worked fine on 3.2.0 beta4 and 3.1.0

I 10/19/2011 19:18:16:895 b045b000 APP| const_missing: UTF_8
I 10/19/2011 19:18:16:895 b045b000 XMPP4R| EXCEPTION:
NameError
uninitialized constant Encoding::UTF_8
lib/rho/rho.rb:1287:in const_missing' lib/rexml/source.rb:169:ininitialize'
lib/rexml/source.rb:14:in new' lib/rexml/source.rb:14:increate_from'
lib/rexml/parsers/baseparser.rb:146:in stream=' lib/rexml/parsers/baseparser.rb:123:ininitialize'
lib/rexml/parsers/sax2parser.rb:11:in new' lib/rexml/parsers/sax2parser.rb:11:ininitialize'
lib/xmpp4r/streamparser.rb:39:in new' lib/xmpp4r/streamparser.rb:39:inparse'
lib/xmpp4r/stream.rb:75:in `block in start'

Fixed schema

Hi,

If using fixed schema model there is error on Rhom::Rhom.database_full_reset because of the wrong SQL statement.
File lib/rho/rho.rb Line 325(2.2.0) or 321 (2.1.) code is "strCreate = source['schema']['sql']"
but it seems like there is no content in "source['schema']['sql']". Instead looks like "source['schema']" should be used since it contains string of SQL Table definition.
Replacing this line with "strCreate = source['schema']" fixed my problem.
Please fix this bug if appropriate.
Thanks

digest ext build error in mac os X

rhodes 3.2.3
xcode 4.2
target: iphone 4 with ios 5.1

when i try to build my rhodes app with the digest and digest-sha1 extensions enabled i get a build error, following:

iphoneos5.0
Check SDK :
PWD: /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3
CMD: /Developer/usr/bin/xcodebuild -version -sdk iphoneos5.0
RET: iPhoneOS5.0.sdk - iOS 5.0 (iphoneos5.0)
RET: SDKVersion: 5.0
RET: Path: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk
RET: PlatformVersion: 5.0
RET: PlatformPath: /Developer/Platforms/iPhoneOS.platform
RET: ProductBuildVersion: 9A334
RET: ProductCopyright: 1983-2011 Apple Inc.
RET: ProductName: iPhone OS
RET: ProductVersion: 5.0
RET: 
iPhoneOS5.0.sdk - iOS 5.0 (iphoneos5.0)
SDKVersion: 5.0
Path: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk
PlatformVersion: 5.0
PlatformPath: /Developer/Platforms/iPhoneOS.platform
ProductBuildVersion: 9A334
ProductCopyright: 1983-2011 Apple Inc.
ProductName: iPhone OS
ProductVersion: 5.0

Running default.rb

Running compileRB

extpaths: ["/Users/foo/Project/my_proj/extensions", "/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/lib/extensions"]
PWD: /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/lib/extensions/digest/ext
CMD: ./build
RET: /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -I. -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/include -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/iphone -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fno-common -arch armv6 armv7 -O2 -o /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/digest.o -c digest.c
arm-apple-darwin10-llvm-gcc-4.2: armv7: No such file or directory
RET: 
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -I. -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/include -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/iphone -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fno-common -arch armv6 armv7 -O2 -o /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/digest.o -c digest.c

PWD: /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/lib/extensions/digest-sha1/ext
CMD: ./build
RET: /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -I. -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/lib/extensions/digest/ext -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/include -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/iphone -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fno-common -arch armv6 armv7 -O2 -o /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/sha1.o -c sha1.c
arm-apple-darwin10-llvm-gcc-4.2: armv7: No such file or directory
RET: 
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -I. -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/lib/extensions/digest/ext -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/include -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared -I/Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/shared/ruby/iphone -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -fno-common -arch armv6 armv7 -O2 -o /Users/clikka/.rvm/gems/ruby-1.9.2-p180/gems/rhodes-3.2.3/platform/iphone/build/rhorunner.build/Release-iphoneos/rhorunner.build/sha1.o -c sha1.c

DateTimePicker can't handle dates before 1-1-1970

The datetimepicker returns a negative number when the date is before 1-1-1970
Reproduceable in the samples-api project, go to the datetimepicker views (either) and enter a date before 1-1-1970 such as '9-30-1969', the respective errors are

APP| App error: time must be positive
C:/Users/raul.COLLEGEPROWLER/rhodesWorkspace/rhodes-system-api-samples/app/DateTime/controller.rb:55:in at' C:/Users/raul.COLLEGEPROWLER/rhodesWorkspace/rhodes-system-api-samples/app/DateTime/controller.rb:55:indatetime_callback'
C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rhocontroller.rb:91:in serve' C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rhoapplication.rb:192:inserve'
C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rho.rb:819:in `serve'

and

APP| App error: time must be positive
C:/Users/raul.COLLEGEPROWLER/rhodesWorkspace/rhodes-system-api-samples/app/DateTimeAJ/controller.rb:69:in at' C:/Users/raul.COLLEGEPROWLER/rhodesWorkspace/rhodes-system-api-samples/app/DateTimeAJ/controller.rb:69:incallback'
C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rhocontroller.rb:91:in serve' C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rhoapplication.rb:192:inserve'
C:/InstantRhodes/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.0/lib/framework/rho/rho.rb:819:in `serve'

This limits the datetimepicker in a huge manner and having users type in the date manually is not an acceptable behavior in a touch app

Suggestion:
DateTime picker should return a DateTime (serialized or even in a parseable string format that includes time zone) instead of a Time as in it's current implementation because Time is limited by epoch which in most platforms is set to 1-1-1970

jqmobile-patch.js run-time error

I am seeing a run-time error in jqmobile-patch.js. Calls to origSuccess() are getting this:

jqmobile-patch.js:43TypeError: 'undefined' is not a function (evaluating 'origSuccess(html)'

Note the line number is from the previous version.

This is probably benign. I assume this is happening when options.success was not defined.

Android input tag was disabled

I use rhodes-2.0.0.beta10 to develop android application, I create a login.erb, but in this view I make the toolbar disappear, when login success , I create four toolbar, but the html tag "input" can't input anything!

Android compile fails on rlim_t

rake run:android fails on any project, even a brand-newly generated one, with the following errors:

/Users/joe/android-ndk-r4/build/platforms/android-3/arch-arm/usr/include/sys/resource.h:43: error: conflicting types for 'rlim_t'
/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/linux/ruby/config.h:263: note: previous declaration of 'rlim_t' was here

The full gcc compile command and response is:

/Users/joe/android-ndk-r4/build/prebuilt/darwin-x86/arm-eabi-4.4.0/bin/arm-eabi-gcc --sysroot /Users/joe/android-ndk-r4/build/platforms/android-3/arch-arm -fPIC -mandroid -DANDROID -DOS_ANDROID -DRHO_DEBUG -g -O2 -DNDEBUG -Wall -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/include -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/linux -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/generated -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/.. -I/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/../sqlite -c platform/shared/ruby/gc.c -o /Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/bin/release/libruby/gc.o
In file included from platform/shared/ruby/eval_intern.h:5,
from platform/shared/ruby/gc.c:19:
platform/shared/ruby/vm_core.h:542: warning: 'fastcall' attribute directive ignored
In file included from platform/shared/ruby/gc.c:42:
/Users/joe/android-ndk-r4/build/platforms/android-3/arch-arm/usr/include/sys/resource.h:43: error: conflicting types for 'rlim_t'
/Library/Ruby/Gems/1.8/gems/rhodes-2.0.0.beta6/platform/android/../shared/ruby/linux/ruby/config.h:263: note: previous declaration of 'rlim_t' was here

Cannot hide progressbar rhodes 2

Hi,

Is there a way (config option?) to disable the progressbar in rhodes 2.
If not, can it be built in please?

thanks

(edit: I meant the progressbar instead of a statusbar)

Camera Not Working on Android 2.3 Phones

After building api-samples with Rhodes 3.0.2 / Android SDK 2.3.3 and installing on both HTC Wildfie S (running Android 2.3.3) and Nexus S (running 2.3.4) The application runs perfectly except for accessing the camera.

They both give the same error message:

undefined method 'get_camera_info' for Camera:Module

I have edited the build.yml and added the camera capability.

I have also tried building with rhodes 3.0.2.beta.1 and get the same error

JSON.generate method not supported

Hey Guys,

I've read the groups entries which talk about JSON support, and I'm aware that JSON.generate support is not yet implement - only parse. The application I'm currently writing would definitely benefit from full JSON support, so if you get the time I'd appreciated it.

Cheers,
Damon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.