rhodes 3.3.3.beta.4 → 3.3.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +7 -5
- data/CREDITS +2215 -0
- data/Rakefile +225 -59
- data/bin/c2dm.rb +0 -0
- data/bin/get-rhodes-info.bat +0 -0
- data/bin/migrate-rhodes-app +0 -0
- data/bin/migrate-rhodes-app.bat +0 -0
- data/bin/rhodes +0 -0
- data/bin/rhodes-setup +0 -0
- data/bin/rhodes-setup.bat +0 -0
- data/bin/rhogen +0 -0
- data/bin/rhogen.bat +0 -0
- data/bin/set-rhodes-sdk +0 -0
- data/bin/set-rhodes-sdk.bat +0 -0
- data/bin/upgrade-rhodes-app +0 -0
- data/bin/upgrade-rhodes-app.bat +0 -0
- data/doc/build.txt +20 -9
- data/doc/configuration.txt +8 -8
- data/doc/connect-to-web-services.txt +1 -1
- data/doc/device-caps.txt +63 -26
- data/doc/extensions.txt +14 -2
- data/doc/install.txt +28 -19
- data/doc/introduction.txt +6 -3
- data/doc/jqt-jqm-transition.txt +10 -9
- data/doc/release.txt +5 -1
- data/doc/rhodes-command-line.txt +130 -0
- data/doc/rhom.txt +16 -11
- data/doc/rhostudio-eclipse.txt +3 -3
- data/doc/simulator.txt +28 -31
- data/doc/syncengine-ajax-api.txt +246 -0
- data/doc/synchronization.txt +21 -3
- data/doc/test-log-debug.txt +3 -1
- data/doc/ui.txt +16 -16
- data/ext/extconf.rb +8 -0
- data/lib/build/jake.rb +5 -5
- data/lib/extensions/barcode/ext/barcode/platform/android/Rakefile +9 -9
- data/lib/extensions/barcode/ext/barcode/platform/android/jni/src/barcode.cpp +81 -1
- data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/CaptureActivityHandler.java +6 -13
- data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/DecodeHandler.java +2 -6
- data/lib/extensions/barcode/ext/barcode/platform/android/src/com/rhomobile/barcode/Barcode.java +12 -1
- data/lib/extensions/barcode/ext/barcode/platform/bb/run.bat +0 -0
- data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.h +2 -0
- data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.mm +36 -0
- data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.h +0 -0
- data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.m +15 -5
- data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/barcode.m +64 -1
- data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode.i +35 -1
- data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +126 -2
- data/lib/extensions/barcode/ext/barcode/shared/src/zbar.c +18 -1
- data/lib/extensions/barcode/ext/build +0 -0
- data/lib/extensions/barcode/ext/build.bat +0 -0
- data/lib/extensions/digest-md5/ext/Rakefile +12 -10
- data/lib/extensions/digest-md5/ext/build +0 -0
- data/lib/extensions/digest-md5/ext/build.bat +0 -0
- data/lib/extensions/digest-md5/ext/digest-md5.sln +2 -2
- data/lib/extensions/digest-md5/ext/digest-md5.vcproj +41 -28
- data/lib/extensions/digest-sha1/ext/Rakefile +11 -10
- data/lib/extensions/digest-sha1/ext/build +0 -0
- data/lib/extensions/digest-sha1/ext/build.bat +0 -0
- data/lib/extensions/digest-sha1/ext/digest-sha1.sln +2 -2
- data/lib/extensions/digest-sha1/ext/digest-sha1.vcproj +41 -28
- data/lib/extensions/digest/ext/Rakefile +12 -11
- data/lib/extensions/digest/ext/build +0 -0
- data/lib/extensions/digest/ext/build.bat +0 -0
- data/lib/extensions/digest/ext/digest.sln +44 -0
- data/lib/extensions/digest/ext/digest.vcproj +40 -27
- data/lib/extensions/esri/ext/build +0 -0
- data/lib/extensions/esri/ext/build.bat +0 -0
- data/lib/extensions/fcntl/ext/Rakefile +10 -9
- data/lib/extensions/fcntl/ext/build +0 -0
- data/lib/extensions/fcntl/ext/build.bat +0 -0
- data/lib/extensions/fcntl/ext/fcntl.vcproj +1 -1
- data/lib/extensions/nfc/ext/build +0 -0
- data/lib/extensions/nfc/ext/build.bat +0 -0
- data/lib/extensions/nfc/ext/nfc/platform/android/Rakefile +11 -11
- data/lib/extensions/nfc/ext/nfc/platform/android/jni/src/nfc.cpp +0 -0
- data/lib/extensions/nfc/ext/nfc/platform/android/src/com/rhomobile/nfc/Nfc.java +12 -10
- data/lib/extensions/nfc/ext/nfc/shared/ruby/nfc_wrap.c +16 -9
- data/lib/extensions/pdf-writer/color.rb +145 -0
- data/lib/extensions/pdf-writer/color/cmyk.rb +279 -0
- data/lib/extensions/pdf-writer/color/css.rb +28 -0
- data/lib/extensions/pdf-writer/color/grayscale.rb +212 -0
- data/lib/extensions/pdf-writer/color/hsl.rb +221 -0
- data/lib/extensions/pdf-writer/color/palette.rb +16 -0
- data/lib/extensions/pdf-writer/color/palette/adobecolor.rb +272 -0
- data/lib/extensions/pdf-writer/color/palette/gimp.rb +116 -0
- data/lib/extensions/pdf-writer/color/palette/monocontrast.rb +180 -0
- data/lib/extensions/pdf-writer/color/rgb-colors.rb +355 -0
- data/lib/extensions/pdf-writer/color/rgb.rb +453 -0
- data/lib/extensions/pdf-writer/color/rgb/metallic.rb +43 -0
- data/lib/extensions/pdf-writer/color/yiq.rb +84 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/color/Licence.txt +27 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/color/README.txt +32 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/pdf-writer/LICENCE +131 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/pdf-writer/README +33 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/transaction-simple/Licence.txt +25 -0
- data/lib/extensions/pdf-writer/ext/LICENSES/transaction-simple/Readme.txt +204 -0
- data/lib/extensions/pdf-writer/pdf/charts.rb +13 -0
- data/lib/extensions/pdf-writer/pdf/charts/stddev.rb +430 -0
- data/lib/extensions/pdf-writer/pdf/math.rb +108 -0
- data/lib/extensions/pdf-writer/pdf/quickref.rb +332 -0
- data/lib/extensions/pdf-writer/pdf/simpletable.rb +947 -0
- data/lib/extensions/pdf-writer/pdf/techbook.rb +901 -0
- data/lib/extensions/pdf-writer/pdf/writer.rb +2729 -0
- data/lib/extensions/pdf-writer/pdf/writer/arc4.rb +63 -0
- data/lib/extensions/pdf-writer/pdf/writer/fontmetrics.rb +203 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-Bold.afm +342 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-BoldOblique.afm +342 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-Oblique.afm +342 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier.afm +342 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-Bold.afm +2827 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-BoldOblique.afm +2827 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-Oblique.afm +3051 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica.afm +3051 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/MustRead.html +19 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Symbol.afm +213 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Bold.afm +2588 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-BoldItalic.afm +2384 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Italic.afm +2667 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Roman.afm +2419 -0
- data/lib/extensions/pdf-writer/pdf/writer/fonts/ZapfDingbats.afm +225 -0
- data/lib/extensions/pdf-writer/pdf/writer/graphics.rb +813 -0
- data/lib/extensions/pdf-writer/pdf/writer/graphics/imageinfo.rb +365 -0
- data/lib/extensions/pdf-writer/pdf/writer/lang.rb +43 -0
- data/lib/extensions/pdf-writer/pdf/writer/lang/en.rb +99 -0
- data/lib/extensions/pdf-writer/pdf/writer/object.rb +23 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/action.rb +35 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/annotation.rb +42 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/catalog.rb +39 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/contents.rb +65 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/destination.rb +40 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/encryption.rb +53 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/font.rb +72 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/fontdescriptor.rb +34 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/fontencoding.rb +40 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/image.rb +304 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/info.rb +51 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/outline.rb +30 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/outlines.rb +30 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/page.rb +195 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/pages.rb +115 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/procset.rb +46 -0
- data/lib/extensions/pdf-writer/pdf/writer/object/viewerpreferences.rb +74 -0
- data/lib/extensions/pdf-writer/pdf/writer/ohash.rb +58 -0
- data/lib/extensions/pdf-writer/pdf/writer/oreader.rb +25 -0
- data/lib/extensions/pdf-writer/pdf/writer/state.rb +48 -0
- data/lib/extensions/pdf-writer/pdf/writer/strokestyle.rb +138 -0
- data/lib/extensions/pdf-writer/transaction/simple.rb +486 -0
- data/lib/extensions/pdf-writer/transaction/simple/group.rb +146 -0
- data/lib/extensions/pdf-writer/transaction/simple/threadsafe.rb +68 -0
- data/lib/extensions/pdf-writer/transaction/simple/threadsafe/group.rb +36 -0
- data/lib/framework/builtinME.rb +0 -0
- data/lib/framework/dateOrig.rb +8 -2
- data/lib/framework/rational.rb +0 -0
- data/lib/framework/res/esri.wm.png +0 -0
- data/lib/framework/rho/rho.rb +6 -0
- data/lib/framework/rho/rhobluetooth.rb +0 -0
- data/lib/framework/rho/rhofsconnector.rb +0 -0
- data/lib/framework/rho/rhonativeviewmanager.rb +0 -0
- data/lib/framework/rhofsconnector.rb +0 -0
- data/lib/framework/rhom/rhom_object_factory.rb +8 -0
- data/lib/framework/rhomotoapi.rb +3 -2
- data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +9 -1
- data/platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc +1 -0
- data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_file_RhoFileApi.h +26 -2
- data/platform/android/Rhodes/jni/src/callbacks.cpp +0 -5
- data/platform/android/Rhodes/jni/src/camera.cpp +1 -1
- data/platform/android/Rhodes/jni/src/fileapi.cpp +39 -19
- data/platform/android/Rhodes/jni/src/geolocation.cpp +3 -3
- data/platform/android/Rhodes/jni/src/mapview.cpp +206 -64
- data/platform/android/Rhodes/jni/src/nativeview.cpp +1 -1
- data/platform/android/Rhodes/jni/src/rhodes.cpp +13 -0
- data/platform/android/Rhodes/jni/src/rhodesapp.cpp +20 -0
- data/platform/android/Rhodes/jni/src/rhodessystem.cpp +36 -3
- data/platform/android/Rhodes/jni/src/signature.cpp +22 -2
- data/platform/android/Rhodes/res/drawable/alert_info.png +0 -0
- data/platform/android/Rhodes/res/drawable/esri.png +0 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java +17 -16
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/Logger.java +4 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/MemoryInfoCollector.java +67 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +139 -114
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesApplication.java +106 -13
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +11 -3
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java +71 -16
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraNewService.java +4 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraSemiService.java +4 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/AbstractRhoExtension.java +22 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/Config.java +243 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtManager.java +19 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtension.java +9 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/{RhodesActivityListener.java → extmanager/IRhoListener.java} +16 -12
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManager.java +63 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManagerImpl.java +239 -14
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhodesStartupListeners.java +9 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/WebkitExtension.java +53 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/file/RhoFileApi.java +27 -12
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +124 -62
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +49 -137
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +84 -114
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SplashScreen.java +75 -82
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +3 -2
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Callout.java +4 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapBitmapManager.java +124 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +232 -43
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Request.java +193 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/IRhoCustomView.java +13 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoNativeViewManager.java +32 -23
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoVideoView.java +74 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +6 -7
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +37 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality03.java +14 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality05.java +51 -38
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality07.java +9 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality08.java +48 -31
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionalityManager.java +15 -16
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/Signature.java +52 -15
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/LocalFileHandler.java +20 -2
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientOld.java +1 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java +77 -34
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/IRhoWebView.java +9 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebChromeClient.java +105 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebViewClient.java +1 -1
- data/platform/android/build/RhodesSRC_build.files +8 -7
- data/platform/android/build/android.rake +326 -216
- data/platform/android/build/androidcommon.rb +27 -13
- data/platform/bb/RubyVM/src/com/rho/file/SimpleFile.java +27 -1
- data/platform/bb/RubyVM/src/j2me/io/File.java +104 -38
- data/platform/bb/build/bb.rake +1 -0
- data/platform/bb/build/runRAPC.bat +0 -0
- data/platform/bb/rhodes/resources/background.png +0 -0
- data/platform/bb/rhodes/resources/esri.png +0 -0
- data/platform/bb/rhodes/resources/mappin.png +0 -0
- data/platform/bb/rhodes/src/com/rho/rubyext/System.java +5 -1
- data/platform/bb/rhodes/src/rhomobile/PushListeningThread.java +2 -2
- data/platform/bb/rhodes/src/rhomobile/mapview/ESRIMapField.java +0 -0
- data/platform/bb/rhodes/src/rhomobile/mapview/ESRIMapProvider.java +0 -0
- data/platform/bb/rhodes/src/rhomobile/mapview/GeoCoding.java +0 -0
- data/platform/bb/rhodes/src/rhomobile/mapview/GoogleGeoCoding.java +0 -0
- data/platform/bb/rhodes/src/rhomobile/mapview/MapTools.java +0 -0
- data/platform/iphone/Classes/AppManager/AppManager.m +7 -1
- data/platform/iphone/Classes/Camera/PickImageDelegate.h +9 -0
- data/platform/iphone/Classes/Camera/PickImageDelegate.m +75 -4
- data/platform/iphone/Classes/GeoLocation/LocationController.h +8 -2
- data/platform/iphone/Classes/GeoLocation/LocationController.m +74 -76
- data/platform/iphone/Classes/InitMemoryInfoCollector.h +33 -0
- data/platform/iphone/Classes/InitMemoryInfoCollector.mm +52 -0
- data/platform/iphone/Classes/NativeView/NVViewController.h +0 -0
- data/platform/iphone/Classes/NativeView/NVViewController.m +34 -2
- data/platform/iphone/Classes/Rhodes.m +22 -2
- data/platform/iphone/Classes/Signature/SignatureDelegate.m +19 -0
- data/platform/iphone/Classes/Signature/SignatureViewController.h +0 -0
- data/platform/iphone/Classes/Signature/SignatureViewController.m +0 -0
- data/platform/iphone/Classes/SimpleMainView.h +0 -0
- data/platform/iphone/Classes/SimpleMainView.m +3 -3
- data/platform/iphone/ESRI/BluePushpin.png +0 -0
- data/platform/iphone/ESRI/BluePushpin@2x.png +0 -0
- data/platform/iphone/ESRI/esri.png +0 -0
- data/platform/iphone/ESRI/esri@2x.png +0 -0
- data/platform/iphone/rbuild/iphone.rake +75 -7
- data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +13 -4
- data/platform/linux/target/compiler/rubylinux +0 -0
- data/platform/mac/target/compiler/RubyMac +0 -0
- data/platform/osx/Rhodes Launcher/rhorunner.app/rhorunner b/data/platform/osx/Rhodes → Launcher/rhorunner.app/rhorunner +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtCore.framework/Versions/4/QtCore +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtGui.framework/Resources/qt_menu.nib/keyedobjects.nib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtNetwork.framework/Versions/4/QtNetwork +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtWebKit.framework/Versions/4/QtWebKit +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist +1 -1
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/accessible/libqtaccessiblewidgets.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqcorewlanbearer.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqgenericbearer.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqcncodecs.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqjpcodecs.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqkrcodecs.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqtwcodecs.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/graphicssystems/libqtracegraphicssystem.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqgif.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqico.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqjpeg.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqmng.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtga.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtiff.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_inspector.dylib +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_tcp.dylib +0 -0
- data/platform/osx/build/osx.rake +6 -8
- data/platform/shared/RhoConnectClient/RhoConnectClient.cpp +165 -33
- data/platform/shared/RhoConnectClient/RhoConnectClient.h +10 -1
- data/platform/shared/common/BundleManager.cpp +27 -16
- data/platform/shared/common/ExtManager.h +15 -2
- data/platform/shared/common/RhoConf.cpp +17 -2
- data/platform/shared/common/RhoConf.h +3 -1
- data/platform/shared/common/RhoDefs.h +6 -6
- data/platform/shared/common/RhoFatalError.h +1 -1
- data/platform/shared/common/RhoFile.cpp +9 -9
- data/platform/shared/common/RhoFilePath.h +7 -3
- data/platform/shared/common/RhoPort.h +3 -3
- data/platform/shared/common/RhoSystem.h +1 -1
- data/platform/shared/common/RhodesApp.cpp +426 -26
- data/platform/shared/common/RhodesApp.h +11 -3
- data/platform/shared/common/RhodesAppBase.cpp +4 -1
- data/platform/shared/common/StringConverter.h +3 -3
- data/platform/shared/common/app_build_capabilities.h +8 -0
- data/platform/shared/common/map/BaseMapEngine.cpp +302 -21
- data/platform/shared/common/map/BaseMapEngine.h +132 -6
- data/platform/shared/common/map/ESRIMapEngine.cpp +2 -1
- data/platform/shared/common/map/GeocodingMapEngine.cpp +22 -4
- data/platform/shared/common/map/GeocodingMapEngine.h +40 -0
- data/platform/shared/common/map/GoogleMapEngine.cpp +13 -1
- data/platform/shared/common/map/MapEngine.h +7 -0
- data/platform/shared/common/map/OSMMapEngine.cpp +12 -1
- data/platform/shared/json/JSONIterator.cpp +1 -1
- data/platform/shared/json/RJSONTokener.c +2 -0
- data/platform/shared/json/config.h +3 -3
- data/platform/shared/logging/RhoLog.cpp +12 -3
- data/platform/shared/logging/RhoLog.h +2 -1
- data/platform/shared/logging/RhoLogConf.cpp +147 -11
- data/platform/shared/logging/RhoLogConf.h +39 -1
- data/platform/shared/logging/RhoLogSink.cpp +1 -1
- data/platform/shared/net/HttpServer.cpp +8 -4
- data/platform/shared/net/INetRequest.cpp +7 -0
- data/platform/shared/net/INetRequest.h +2 -0
- data/platform/shared/net/RawSocket.cpp +1 -1
- data/platform/shared/qt/pbxproj2pro.pl +0 -0
- data/platform/shared/qt/pro_vcproj_diff.pl +0 -0
- data/platform/shared/qt/rhodes/QtMainWindow.cpp +1 -1
- data/platform/shared/qt/rhodes/impl/RhoClassFactoryImpl.h +2 -2
- data/platform/shared/qt/rhodes/impl/RhoThreadImpl.cpp +2 -2
- data/platform/shared/qt/rhodes/impl/SystemImpl.cpp +11 -1
- data/platform/shared/qt/rhodes/main.cpp +5 -5
- data/platform/shared/ruby/ext/alert/alert_wrap.c +8 -8
- data/platform/shared/ruby/ext/bluetooth/bluetooth.i +0 -0
- data/platform/shared/ruby/ext/bluetooth/bluetooth_wrap.c +16 -9
- data/platform/shared/ruby/ext/camera/camera.i +2 -2
- data/platform/shared/ruby/ext/camera/camera_wrap.c +18 -3
- data/platform/shared/ruby/ext/datetimepicker/datetimepicker_wrap.c +37 -8
- data/platform/shared/ruby/ext/geolocation/geolocation_wrap.c +8 -8
- data/platform/shared/ruby/ext/mapview/mapview_wrap.c +16 -9
- data/platform/shared/ruby/ext/nativebar/nativebar_wrap.c +16 -9
- data/platform/shared/ruby/ext/nativeviewmanager/nativeviewmanager.i +0 -0
- data/platform/shared/ruby/ext/nativeviewmanager/nativeviewmanager_wrap.c +16 -9
- data/platform/shared/ruby/ext/phonebook/phonebook_wrap.c +8 -1
- data/platform/shared/ruby/ext/rho/rhoruby.c +7 -1
- data/platform/shared/ruby/ext/rho/rhoruby.h +1 -0
- data/platform/shared/ruby/ext/rhoconf/rhoconf_wrap.c +16 -9
- data/platform/shared/ruby/ext/signature/signature.i +0 -0
- data/platform/shared/ruby/ext/signature/signature_wrap.c +9 -9
- data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +16 -9
- data/platform/shared/ruby/ext/system/system_wrap.c +16 -9
- data/platform/shared/ruby/ext/webview/webview_wrap.c +16 -9
- data/platform/shared/ruby/gc.c +1 -0
- data/platform/shared/ruby/regint.h +6 -4
- data/platform/shared/ruby/vm.c +1 -0
- data/platform/shared/ruby/wince/wince.h +1 -1
- data/platform/shared/rubyext/System.cpp +1 -1
- data/platform/shared/shttpd/src/rdispatcher.c +3 -3
- data/platform/shared/shttpd/src/std_includes.h +1 -1
- data/platform/shared/sqlite/sqlite3.c +1 -0
- data/platform/shared/statistic/test/TestProfiling.cpp +1 -1
- data/platform/shared/stlport/build/lib/configure +0 -0
- data/platform/shared/stlport/build/lib/configure.bat +0 -0
- data/platform/shared/sync/SyncEngine.cpp +9 -12
- data/platform/shared/sync/SyncNotify.cpp +36 -3
- data/platform/shared/sync/SyncNotify.h +11 -4
- data/platform/shared/sync/SyncSource.cpp +32 -16
- data/platform/shared/sync/SyncSource.h +2 -3
- data/platform/shared/sync/SyncThread.cpp +13 -4
- data/platform/shared/sync/SyncThread.h +4 -0
- data/platform/shared/tcmalloc/page_heap.h +1 -1
- data/platform/shared/tcmalloc/rhomem.h +1 -1
- data/platform/shared/tcmalloc/windows/port.cpp +12 -3
- data/platform/shared/test/Tests.cpp +4 -4
- data/platform/shared/test/test_helper.cpp +4 -4
- data/platform/symbian/sqlite3/src/sqlite3.h +1 -1
- data/platform/win32/RhoSimulator/Microsoft.VC90.CRT.manifest +6 -0
- data/platform/win32/RhoSimulator/Microsoft.VC90.OpenMP.manifest +6 -0
- data/platform/win32/RhoSimulator/QtCore4.dll +0 -0
- data/platform/win32/RhoSimulator/QtGui4.dll +0 -0
- data/platform/win32/RhoSimulator/QtNetwork4.dll +0 -0
- data/platform/win32/RhoSimulator/QtWebKit4.dll +0 -0
- data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
- data/platform/win32/RhoSimulator/imageformats/qgif4.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qico4.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qjpeg4.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qmng4.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qsvg4.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qtiff4.dll +0 -0
- data/platform/win32/RhoSimulator/libeay32.dll +0 -0
- data/platform/win32/RhoSimulator/msvcm90.dll +0 -0
- data/platform/win32/RhoSimulator/msvcp90.dll +0 -0
- data/platform/win32/RhoSimulator/msvcr90.dll +0 -0
- data/platform/win32/RhoSimulator/phonon4.dll +0 -0
- data/platform/win32/RhoSimulator/ssleay32.dll +0 -0
- data/platform/win32/RhoSimulator/vcomp90.dll +0 -0
- data/platform/win32/target/replaceicon/replaceicon.exe +0 -0
- data/platform/win32/target/updateresstring/updateresstring.exe +0 -0
- data/platform/wm/RhoLib/RhoLib.vcproj +394 -69
- data/platform/wm/build/build_inf.js +83 -23
- data/platform/wm/build/wm.rake +127 -81
- data/platform/wm/rhodes.sln +6 -6
- data/platform/wm/rhodes/DateTimePicker.h +2 -2
- data/platform/wm/rhodes/IBrowserEngine.h +3 -0
- data/platform/wm/rhodes/IEBrowserEngine.cpp +34 -2
- data/platform/wm/rhodes/IEBrowserEngine.h +4 -1
- data/platform/wm/rhodes/LicenseStub.cpp +73 -0
- data/platform/{android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientNew.java → wm/rhodes/LogMemory.cpp} +32 -20
- data/platform/{android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettings.java → wm/rhodes/LogMemory.h} +11 -8
- data/platform/wm/rhodes/LogOptionsDlg.h +1 -1
- data/platform/wm/rhodes/LogView.cpp +10 -10
- data/platform/wm/rhodes/LogView.h +10 -10
- data/platform/wm/rhodes/MainWindow.cpp +431 -173
- data/platform/wm/rhodes/MainWindow.h +37 -19
- data/platform/wm/rhodes/MapView/MapViewManager.h +1 -1
- data/platform/wm/rhodes/OkCancelModalDialog.h +1 -1
- data/platform/wm/rhodes/Rhodes.cpp +210 -47
- data/platform/wm/rhodes/Rhodes.rc +38 -0
- data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +2 -2
- data/platform/wm/rhodes/bluetooth/Bluetooth.h +3 -3
- data/platform/wm/rhodes/camera/Camera.cpp +2 -1
- data/platform/wm/rhodes/camera/Camera.h +1 -1
- data/platform/wm/rhodes/resource.h +1 -1
- data/platform/wm/rhodes/rho/common/ExtManager.cpp +93 -5
- data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +2 -2
- data/platform/wm/rhodes/rho/rubyext/NativeToolbar.cpp +2 -2
- data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +13 -7
- data/platform/wm/rhodes/rhodes.vcproj +1409 -1008
- data/platform/wm/rhodes/simulator/MainWindowQt.h +1 -1
- data/platform/wm/rhodes/stdafx.h +2 -2
- data/platform/wm/rhoelements.sln +7 -9
- data/platform/wm/rubylib/rubylib.vcproj +62 -1
- data/platform/wm/sqlite3/sqlite3.vcproj +62 -1
- data/platform/wm/syncengine/syncengine.vcproj +62 -1
- data/platform/wm/tcmalloc/tcmalloc.vcproj +72 -53
- data/platform/wm/tools/detool/detool.cpp +1435 -1357
- data/platform/wp7/RhoRubyExtGen/GenerateInitializers.cmd +0 -0
- data/platform/wp7/RhoRubyLib/common/RhoLicense.cs +105 -0
- data/platform/wp7/RhoRubyLib/common/RhodesApp.cs +23 -5
- data/platform/wp7/RhoRubyLib/sync/SyncNotify.cs +5 -0
- data/platform/wp7/RhoRubyLib/views/RhoView.xaml.cs +22 -3
- data/platform/wp7/build/wp.rake +1 -0
- data/platform/wp7/rhodes/MainPage.xaml.cs +11 -0
- data/rakefile.rb +225 -59
- data/res/build-tools/7za.exe +0 -0
- data/res/build-tools/RhoAppRunner.exe +0 -0
- data/res/build-tools/RhoLogServer.exe +0 -0
- data/res/build-tools/RhoRuby.exe +0 -0
- data/res/build-tools/RubyMac +0 -0
- data/res/build-tools/detool.exe +0 -0
- data/res/build-tools/iphonesim/Source/iPhoneSimulator.m +1 -1
- data/res/build-tools/iphonesim/build/Release/iphonesim +0 -0
- data/res/build-tools/iphonesim/build/Release/iphonesim_43 +0 -0
- data/res/build-tools/license_rc.dll +0 -0
- data/res/build-tools/make.exe +0 -0
- data/res/build-tools/rubylinux +0 -0
- data/res/build-tools/swig_patch/Lib/typemaps/fragments.swg +235 -0
- data/res/build-tools/wmdc_connect.exe +0 -0
- data/res/build-tools/wp7explorer.exe +0 -0
- data/res/generators/rhogen.rb +2 -2
- data/res/generators/templates/application/app/Settings/controller.rb +1 -1
- data/res/generators/templates/application/app/layout.erb +1 -1
- data/res/generators/templates/application/app/loading.png +0 -0
- data/res/generators/templates/application/public/css/re_webkit.css +736 -0
- data/res/generators/templates/application/public/css/windows_mobile.css +0 -0
- data/res/generators/templates/application/public/images/listArrow.png +0 -0
- data/res/generators/templates/application/public/jqmobile/images/ajax-loader.png +0 -0
- data/res/generators/templates/application/public/jqmobile/images/icons-18-black.png +0 -0
- data/res/generators/templates/application/public/jqmobile/images/icons-18-white.png +0 -0
- data/res/generators/templates/application/public/jqmobile/images/icons-36-black.png +0 -0
- data/res/generators/templates/application/public/jqmobile/images/icons-36-white.png +0 -0
- data/res/generators/templates/application/public/js/syncengine.js +409 -52
- data/res/generators/templates/extension/extensions/montana/ext/build +0 -0
- data/res/generators/templates/extension/extensions/montana/ext/build.bat +0 -0
- data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/Rakefile +10 -10
- data/res/generators/templates/spec/app/SpecRunner/controller.rb +2 -0
- data/res/libs/motorolalicence/android/MotorolaLicence.h +13 -0
- data/res/libs/motorolalicence/android/libMotorolaLicence.a +0 -0
- data/res/libs/motorolalicence/iphone/MotorolaLicence.h +13 -0
- data/res/libs/motorolalicence/iphone/libMotorolaLicence.a +0 -0
- data/rhodes.gemspec +1 -1
- data/spec/framework_spec/app/SpecRunner/controller.rb +2 -0
- data/spec/phone_spec/app/SpecRunner/controller.rb +2 -0
- data/version +1 -1
- metadata +487 -412
- data/Manifest.txt +0 -7960
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivityStartupListeners.java +0 -12
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsNew.java +0 -52
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsOld.java +0 -62
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/phonon.framework/Versions/4/phonon +0 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/phonon_backend/libphonon_qt7.dylib +0 -0
- data/platform/win32/RhoSimulator/Microsoft.VC80.CRT.manifest +0 -8
- data/platform/win32/RhoSimulator/Microsoft.VC80.OpenMP.manifest +0 -7
- data/platform/win32/RhoSimulator/msvcm80.dll +0 -0
- data/platform/win32/RhoSimulator/msvcp80.dll +0 -0
- data/platform/win32/RhoSimulator/msvcr80.dll +0 -0
- data/platform/win32/RhoSimulator/vcomp.dll +0 -0
- data/rhomobile-debug-1.0.6.gem +0 -0
@@ -1,9 +1,15 @@
|
|
1
1
|
package com.rhomobile.rhodes.webview;
|
2
2
|
|
3
|
+
|
4
|
+
import android.app.Activity;
|
3
5
|
import android.view.View;
|
6
|
+
import android.view.ViewGroup;
|
4
7
|
|
5
8
|
public interface IRhoWebView {
|
6
9
|
View getView();
|
10
|
+
void setContainerView(ViewGroup view);
|
11
|
+
ViewGroup getContainerView();
|
12
|
+
void setWebClient(Activity activity);
|
7
13
|
boolean canGoBack();
|
8
14
|
void goBack();
|
9
15
|
void goForward();
|
@@ -14,4 +20,7 @@ public interface IRhoWebView {
|
|
14
20
|
void loadData(String data, String mime, String encoding);
|
15
21
|
void loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl);
|
16
22
|
void stopLoad();
|
23
|
+
void setZoom(int scale);
|
24
|
+
void setTextZoom(int scale);
|
25
|
+
String getEngineId();
|
17
26
|
}
|
@@ -0,0 +1,105 @@
|
|
1
|
+
/*------------------------------------------------------------------------
|
2
|
+
* (The MIT License)
|
3
|
+
*
|
4
|
+
* Copyright (c) 2008-2011 Rhomobile, Inc.
|
5
|
+
*
|
6
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
|
+
* of this software and associated documentation files (the "Software"), to deal
|
8
|
+
* in the Software without restriction, including without limitation the rights
|
9
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
10
|
+
* copies of the Software, and to permit persons to whom the Software is
|
11
|
+
* furnished to do so, subject to the following conditions:
|
12
|
+
*
|
13
|
+
* The above copyright notice and this permission notice shall be included in
|
14
|
+
* all copies or substantial portions of the Software.
|
15
|
+
*
|
16
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
21
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
22
|
+
* THE SOFTWARE.
|
23
|
+
*
|
24
|
+
* http://rhomobile.com
|
25
|
+
*------------------------------------------------------------------------*/
|
26
|
+
|
27
|
+
package com.rhomobile.rhodes.webview;
|
28
|
+
|
29
|
+
import android.app.Activity;
|
30
|
+
import android.view.Window;
|
31
|
+
import android.webkit.JsResult;
|
32
|
+
import android.webkit.WebChromeClient;
|
33
|
+
import android.webkit.WebStorage;
|
34
|
+
import android.webkit.WebView;
|
35
|
+
|
36
|
+
import com.rhomobile.rhodes.Logger;
|
37
|
+
import com.rhomobile.rhodes.RhoConf;
|
38
|
+
import com.rhomobile.rhodes.RhodesActivity;
|
39
|
+
|
40
|
+
|
41
|
+
public class RhoWebChromeClient extends WebChromeClient {
|
42
|
+
private static final String TAG = RhoWebChromeClient.class.getSimpleName();
|
43
|
+
|
44
|
+
private Activity mActivity;
|
45
|
+
//private SimpleMainView mMainView;
|
46
|
+
|
47
|
+
public RhoWebChromeClient(Activity activity) {
|
48
|
+
mActivity = activity;
|
49
|
+
//mMainView = mainView;
|
50
|
+
}
|
51
|
+
|
52
|
+
public void onConsoleMessage(String message, int lineNumber, String sourceID) {
|
53
|
+
Logger.D(TAG, message + " -- From line " + lineNumber + " of " + sourceID);
|
54
|
+
}
|
55
|
+
|
56
|
+
public void onExceededDatabaseQuota(String url, String databaseIdentifier, long currentQuota, long estimatedSize,
|
57
|
+
long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) {
|
58
|
+
quotaUpdater.updateQuota(estimatedSize * 2);
|
59
|
+
}
|
60
|
+
|
61
|
+
// public void onShowCustomView(View view, CustomViewCallback callback) {
|
62
|
+
// Logger.I(TAG, "onShowCustomView");
|
63
|
+
// if(mMainView == null) {
|
64
|
+
// Logger.E(TAG, "Cannot handle custom view, SimpleMainView still uninitialized");
|
65
|
+
// return;
|
66
|
+
// }
|
67
|
+
//
|
68
|
+
// if (view instanceof FrameLayout){
|
69
|
+
// Logger.I(TAG, "FrameLayout is detected");
|
70
|
+
// FrameLayout frame = (FrameLayout) view;
|
71
|
+
//
|
72
|
+
// //frame.
|
73
|
+
//
|
74
|
+
// if (frame.getFocusedChild() instanceof VideoView) {
|
75
|
+
// Logger.I(TAG, "VideoView is detected");
|
76
|
+
// RhoVideoView rhoVideoView = new RhoVideoView(frame, callback);
|
77
|
+
// mMainView.setCustomView(rhoVideoView);
|
78
|
+
// }
|
79
|
+
// }
|
80
|
+
// }
|
81
|
+
|
82
|
+
public void onProgressChanged(WebView view, int newProgress) {
|
83
|
+
if (!RhoConf.getBool("disable_loading_indication")) {
|
84
|
+
newProgress *= 100;
|
85
|
+
if (newProgress < 0)
|
86
|
+
newProgress = 0;
|
87
|
+
if (newProgress > RhodesActivity.MAX_PROGRESS)
|
88
|
+
newProgress = RhodesActivity.MAX_PROGRESS;
|
89
|
+
mActivity.getWindow().setFeatureInt(Window.FEATURE_PROGRESS, newProgress);
|
90
|
+
} else {
|
91
|
+
newProgress = RhodesActivity.MAX_PROGRESS;
|
92
|
+
}
|
93
|
+
super.onProgressChanged(view, newProgress);
|
94
|
+
}
|
95
|
+
|
96
|
+
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
|
97
|
+
return false;
|
98
|
+
}
|
99
|
+
|
100
|
+
public boolean onJsConfirm(WebView view, String url, String message, JsResult result) {
|
101
|
+
return false;
|
102
|
+
}
|
103
|
+
}
|
104
|
+
|
105
|
+
|
@@ -53,7 +53,7 @@ public class RhoWebViewClient extends WebViewClient
|
|
53
53
|
public void onPageStarted(WebView view, String url, Bitmap favicon) {
|
54
54
|
super.onPageStarted(view, url, favicon);
|
55
55
|
|
56
|
-
if (
|
56
|
+
if (!RhoConf.getBool("disable_loading_indication"))
|
57
57
|
RhodesActivity.safeGetInstance().getWindow().setFeatureInt(Window.FEATURE_PROGRESS, 0);
|
58
58
|
else
|
59
59
|
RhodesActivity.safeGetInstance().getWindow().setFeatureInt(Window.FEATURE_PROGRESS, RhodesActivity.MAX_PROGRESS);
|
@@ -4,6 +4,7 @@ platform/android/Rhodes/src/com/rhomobile/rhodes/BaseActivity.java
|
|
4
4
|
platform/android/Rhodes/src/com/rhomobile/rhodes/HttpLog.java
|
5
5
|
platform/android/Rhodes/src/com/rhomobile/rhodes/LocalFileProvider.java
|
6
6
|
platform/android/Rhodes/src/com/rhomobile/rhodes/Logger.java
|
7
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/MemoryInfoCollector.java
|
7
8
|
platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java
|
8
9
|
platform/android/Rhodes/src/com/rhomobile/rhodes/NavBar.java
|
9
10
|
platform/android/Rhodes/src/com/rhomobile/rhodes/PushReceiver.java
|
@@ -13,8 +14,6 @@ platform/android/Rhodes/src/com/rhomobile/rhodes/RhoCryptImpl.java
|
|
13
14
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoLogConf.java
|
14
15
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoMenu.java
|
15
16
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java
|
16
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivityListener.java
|
17
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivityStartupListeners.java
|
18
17
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesAppOptions.java
|
19
18
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesApplication.java
|
20
19
|
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java
|
@@ -57,10 +56,13 @@ platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/AnnotationsOverlay.java
|
|
57
56
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/GoogleMapView.java
|
58
57
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapTouch.java
|
59
58
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java
|
59
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Request.java
|
60
60
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MultiTouchHandler.java
|
61
61
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/OneTouchHandler.java
|
62
62
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/TouchHandler.java
|
63
63
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/ExtrasHolder.java
|
64
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapBitmapManager.java
|
65
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/IRhoCustomView.java
|
64
66
|
platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoNativeViewManager.java
|
65
67
|
platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Contact.java
|
66
68
|
platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessor.java
|
@@ -90,21 +92,20 @@ platform/android/Rhodes/src/com/rhomobile/rhodes/util/PerformOnUiThread.java
|
|
90
92
|
platform/android/Rhodes/src/com/rhomobile/rhodes/util/PhoneId.java
|
91
93
|
platform/android/Rhodes/src/com/rhomobile/rhodes/util/Utils.java
|
92
94
|
platform/android/Rhodes/src/com/rhomobile/rhodes/util/ContextFactory.java
|
93
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/
|
94
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientOld.java
|
95
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettings.java
|
96
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsNew.java
|
97
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsOld.java
|
95
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebChromeClient.java
|
98
96
|
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebViewClient.java
|
99
97
|
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/IRhoWebView.java
|
100
98
|
platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java
|
101
99
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/AbstractRhoExtension.java
|
100
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/Config.java
|
102
101
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtData.java
|
103
102
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtension.java
|
104
103
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtManager.java
|
104
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoListener.java
|
105
105
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtDataImpl.java
|
106
106
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManagerImpl.java
|
107
107
|
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManager.java
|
108
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/WebkitExtension.java
|
108
109
|
platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java
|
109
110
|
platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java
|
110
111
|
platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality02.java
|
@@ -27,6 +27,8 @@
|
|
27
27
|
require File.dirname(__FILE__) + '/androidcommon.rb'
|
28
28
|
require File.dirname(__FILE__) + '/android_tools.rb'
|
29
29
|
require 'pathname'
|
30
|
+
require 'tempfile'
|
31
|
+
|
30
32
|
|
31
33
|
USE_OWN_STLPORT = false
|
32
34
|
#USE_TRACES = # see androidcommon.h
|
@@ -50,7 +52,7 @@ ANDROID_SDK_LEVEL = 4
|
|
50
52
|
ANDROID_PERMISSIONS = {
|
51
53
|
'audio' => ['RECORD_AUDIO', 'MODIFY_AUDIO_SETTINGS'],
|
52
54
|
'camera' => 'CAMERA',
|
53
|
-
'gps' => 'ACCESS_FINE_LOCATION',
|
55
|
+
'gps' => ['ACCESS_FINE_LOCATION', 'ACCESS_COARSE_LOCATION'],
|
54
56
|
'network_state' => 'ACCESS_NETWORK_STATE',
|
55
57
|
'phone' => ['CALL_PHONE', 'READ_PHONE_STATE'],
|
56
58
|
'pim' => ['READ_CONTACTS', 'WRITE_CONTACTS', 'GET_ACCOUNTS'],
|
@@ -62,7 +64,9 @@ ANDROID_PERMISSIONS = {
|
|
62
64
|
'push' => proc do |manifest| add_push(manifest) end,
|
63
65
|
'motorola' => ['SYSTEM_ALERT_WINDOW', 'BROADCAST_STICKY', proc do |manifest| add_motosol_sdk(manifest) end],
|
64
66
|
'motoroladev' => ['SYSTEM_ALERT_WINDOW', 'BROADCAST_STICKY', proc do |manifest| add_motosol_sdk(manifest) end],
|
65
|
-
'webkit_browser' => nil
|
67
|
+
'webkit_browser' => nil,
|
68
|
+
'shared_runtime' => nil,
|
69
|
+
'motorola_browser' => nil
|
66
70
|
}
|
67
71
|
|
68
72
|
ANDROID_CAPS_ALWAYS_ENABLED = ['network_state']
|
@@ -383,12 +387,6 @@ namespace "config" do
|
|
383
387
|
android_api_levels.sort!
|
384
388
|
$found_api_level = android_api_levels.last
|
385
389
|
|
386
|
-
$ext_android_rhodes_activity_listener = []
|
387
|
-
$ext_android_manifest_changes= []
|
388
|
-
$ext_android_resources_addons = []
|
389
|
-
$ext_android_additional_sources_list = []
|
390
|
-
$ext_android_additional_lib = []
|
391
|
-
|
392
390
|
$gapikey = $app_config["android"]["apikey"] unless $app_config["android"].nil?
|
393
391
|
$gapikey = $config["android"]["apikey"] if $gapikey.nil? and not $config["android"].nil?
|
394
392
|
$gapikey = '' unless $gapikey.is_a? String
|
@@ -430,24 +428,10 @@ namespace "config" do
|
|
430
428
|
$builddir = File.join($androidpath, "build")
|
431
429
|
$shareddir = File.join($androidpath, "..", "shared")
|
432
430
|
$srcdir = File.join($bindir, "RhoBundle")
|
433
|
-
$targetdir = File.join($bindir, "target")
|
431
|
+
$targetdir = File.join($bindir, "target/android")
|
434
432
|
$excludelib = ['**/builtinME.rb','**/ServeME.rb','**/dateME.rb','**/rationalME.rb']
|
435
433
|
$tmpdir = File.join($bindir, "tmp")
|
436
|
-
$resourcedir = File.join($tmpdir, "resource")
|
437
434
|
$libs = File.join($androidpath, "Rhodes", "libs")
|
438
|
-
$appname = $app_config["name"]
|
439
|
-
$appname = "Rhodes" if $appname.nil?
|
440
|
-
$vendor = $app_config["vendor"]
|
441
|
-
$vendor = "rhomobile" if $vendor.nil?
|
442
|
-
$vendor = $vendor.gsub(/^[^A-Za-z]/, '_').gsub(/[^A-Za-z0-9]/, '_').gsub(/_+/, '_').downcase
|
443
|
-
$app_package_name = $app_config["android"] ? $app_config["android"]["package_name"] : nil
|
444
|
-
$app_package_name = "com.#{$vendor}." + $appname.downcase.gsub(/[^A-Za-z_0-9]/, '') unless $app_package_name
|
445
|
-
$app_package_name.gsub!(/\.[\d]/, "._")
|
446
|
-
|
447
|
-
if $uri_host.nil?
|
448
|
-
$uri_host = "rhomobile.com"
|
449
|
-
$uri_path_prefix = "/#{$app_package_name}"
|
450
|
-
end
|
451
435
|
|
452
436
|
$rhomanifest = File.join $androidpath, "Rhodes", "AndroidManifest.xml"
|
453
437
|
$appmanifest = File.join $tmpdir, "AndroidManifest.xml"
|
@@ -463,6 +447,7 @@ namespace "config" do
|
|
463
447
|
$app_native_libs_java = File.join $tmpdir, "NativeLibraries.java"
|
464
448
|
$app_capabilities_java = File.join $tmpdir, "Capabilities.java"
|
465
449
|
$app_push_java = File.join $tmpdir, "Push.java"
|
450
|
+
$app_startup_listeners_java = File.join $tmpdir, "RhodesStartupListeners.java"
|
466
451
|
|
467
452
|
if RUBY_PLATFORM =~ /(win|w)32$/
|
468
453
|
$emulator = #"cmd /c " +
|
@@ -585,8 +570,35 @@ namespace "config" do
|
|
585
570
|
$app_config["capabilities"].map! { |cap| cap.is_a?(String) ? cap : nil }.delete_if { |cap| cap.nil? }
|
586
571
|
$use_google_addon_api = true unless $app_config["capabilities"].index("push").nil?
|
587
572
|
|
573
|
+
$appname = $app_config["name"]
|
574
|
+
$appname = "Rhodes" if $appname.nil?
|
575
|
+
$vendor = $app_config["vendor"]
|
576
|
+
if $vendor.nil?
|
577
|
+
if $app_config['capabilities'].index('motorola').nil? and $app_config['capabilities'].index('motoroladev').nil?
|
578
|
+
$vendor = 'rhomobile'
|
579
|
+
else
|
580
|
+
$vendor = 'motorolasolutions'
|
581
|
+
end
|
582
|
+
end
|
583
|
+
$vendor = $vendor.gsub(/^[^A-Za-z]/, '_').gsub(/[^A-Za-z0-9]/, '_').gsub(/_+/, '_').downcase
|
584
|
+
$app_package_name = $app_config["android"] ? $app_config["android"]["package_name"] : nil
|
585
|
+
$app_package_name = "com.#{$vendor}." + $appname.downcase.gsub(/[^A-Za-z_0-9]/, '') unless $app_package_name
|
586
|
+
$app_package_name.gsub!(/\.[\d]/, "._")
|
587
|
+
|
588
|
+
puts "$vendor = #{$vendor} >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
|
589
|
+
puts "$app_package_name = #{$app_package_name} >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
|
590
|
+
|
591
|
+
if $uri_host.nil?
|
592
|
+
if $app_config['capabilities'].index('motorola').nil? and $app_config['capabilities'].index('motoroladev').nil?
|
593
|
+
$uri_host = 'rhomobile.com'
|
594
|
+
else
|
595
|
+
$uri_host = 'motorolasolutions.com'
|
596
|
+
end
|
597
|
+
$uri_path_prefix = "/#{$app_package_name}"
|
598
|
+
end
|
599
|
+
|
588
600
|
unless $app_config['capabilities'].index('motorola').nil? and $app_config['capabilities'].index('motoroladev').nil?
|
589
|
-
$use_motosol_barcode_api = true
|
601
|
+
$use_motosol_barcode_api = true
|
590
602
|
$use_motosol_api_classpath = true unless $app_config['capabilities'].index('motoroladev').nil?
|
591
603
|
raise 'Cannot use Motorola SDK addon and Google SDK addon together!' if $use_google_addon_api
|
592
604
|
end
|
@@ -732,6 +744,104 @@ namespace "config" do
|
|
732
744
|
mkdir_p $libs if not File.exists? $libs
|
733
745
|
|
734
746
|
end
|
747
|
+
|
748
|
+
namespace 'android' do
|
749
|
+
task :extensions => ['config:android', 'build:bundle:noxruby'] do
|
750
|
+
|
751
|
+
$ext_android_rhodes_activity_listener = []
|
752
|
+
$ext_android_manifest_changes= []
|
753
|
+
$ext_android_resources_addons = []
|
754
|
+
$ext_android_additional_sources = {}
|
755
|
+
$ext_android_additional_lib = []
|
756
|
+
$ext_android_build_scripts = {}
|
757
|
+
|
758
|
+
$app_config["extensions"].each do |ext|
|
759
|
+
puts "#{ext} is processing..."
|
760
|
+
$app_config["extpaths"].each do |p|
|
761
|
+
extpath = File.join(p, ext, 'ext')
|
762
|
+
|
763
|
+
puts "Checking extpath: #{extpath}"
|
764
|
+
|
765
|
+
if File.exists? extpath and File.directory? extpath
|
766
|
+
puts "#{extpath} is configuring..."
|
767
|
+
extyml = File.join(p, ext,"ext.yml")
|
768
|
+
if File.file? extyml
|
769
|
+
puts "#{extyml} is processing..."
|
770
|
+
extconf = Jake.config(File.open(extyml))
|
771
|
+
|
772
|
+
android_listener = extconf["android_rhodes_activity_listener"]
|
773
|
+
$ext_android_rhodes_activity_listener << android_listener unless android_listener.nil?
|
774
|
+
|
775
|
+
android_manifest_changes = extconf["android_manifest_changes"]
|
776
|
+
if android_manifest_changes != nil
|
777
|
+
android_manifest_changes = File.join(p, ext, android_manifest_changes)
|
778
|
+
$ext_android_manifest_changes << android_manifest_changes
|
779
|
+
end
|
780
|
+
|
781
|
+
android_resources_addons = extconf["android_resources_addons"]
|
782
|
+
if android_resources_addons != nil
|
783
|
+
android_resources_addons = File.join(p, ext, android_resources_addons)
|
784
|
+
$ext_android_resources_addons << android_resources_addons
|
785
|
+
end
|
786
|
+
|
787
|
+
android_additional_sources_list = extconf["android_additional_sources_list"]
|
788
|
+
unless android_additional_sources_list.nil?
|
789
|
+
ext_sources_list = File.join(p, ext, android_additional_sources_list)
|
790
|
+
|
791
|
+
if File.exists? ext_sources_list
|
792
|
+
$ext_android_additional_sources[File.join(p, ext)] = ext_sources_list
|
793
|
+
else
|
794
|
+
raise "Extension java source list is missed: #{ext_sources_list}"
|
795
|
+
end
|
796
|
+
else
|
797
|
+
puts "No additional java sources for '#{ext}'"
|
798
|
+
end
|
799
|
+
|
800
|
+
android_additional_lib = extconf["android_additional_lib"]
|
801
|
+
if android_additional_lib != nil
|
802
|
+
android_additional_lib.each do |lib|
|
803
|
+
$ext_android_additional_lib << File.join(p, ext, lib)
|
804
|
+
end
|
805
|
+
end
|
806
|
+
|
807
|
+
puts "#{extyml} is processed"
|
808
|
+
end
|
809
|
+
|
810
|
+
build_script = File.join(extpath, 'build' + $bat_ext)
|
811
|
+
if RUBY_PLATFORM =~ /(win|w)32$/
|
812
|
+
$ext_android_build_scripts[extpath] = 'build.bat' if File.exists? build_script
|
813
|
+
else
|
814
|
+
$ext_android_build_scripts[extpath] = File.join('.', 'build' + $bat_ext) if File.exists? build_script
|
815
|
+
|
816
|
+
# modify executable attribute
|
817
|
+
if File.exists? build_script
|
818
|
+
if !File.executable? build_script
|
819
|
+
#puts 'change executable attribute for build script in extension : '+build_script
|
820
|
+
begin
|
821
|
+
#File.chmod 0700, build_script
|
822
|
+
#puts 'executable attribute was writed for : '+build_script
|
823
|
+
rescue Exception => e
|
824
|
+
puts 'ERROR: can not change attribute for build script in extension ! Try to run build command with sudo: prefix.'
|
825
|
+
end
|
826
|
+
else
|
827
|
+
puts 'build script in extension already executable : '+build_script
|
828
|
+
end
|
829
|
+
else
|
830
|
+
puts 'build script in extension not found => pure ruby extension'
|
831
|
+
end
|
832
|
+
end
|
833
|
+
puts "#{extpath} is configured"
|
834
|
+
# to prevent to build 2 extensions with same name
|
835
|
+
break
|
836
|
+
end # exists?
|
837
|
+
end # $app_config["extpaths"].each
|
838
|
+
end # $app_config["extensions"].each
|
839
|
+
|
840
|
+
puts "Extensions' java source lists: #{$ext_android_additional_sources.inspect}"
|
841
|
+
|
842
|
+
end #task :extensions
|
843
|
+
|
844
|
+
end #namespace 'android'
|
735
845
|
end
|
736
846
|
|
737
847
|
|
@@ -742,7 +852,7 @@ namespace "build" do
|
|
742
852
|
|
743
853
|
manifest = $appmanifest
|
744
854
|
resource = $appres
|
745
|
-
assets = Jake.get_absolute
|
855
|
+
assets = Jake.get_absolute File.join($tmpdir, 'assets')
|
746
856
|
nativelibs = Jake.get_absolute(File.join($androidpath, "Rhodes", "libs"))
|
747
857
|
#rjava = Jake.get_absolute(File.join($androidpath, "Rhodes", "gen", "com", "rhomobile", "rhodes"))
|
748
858
|
|
@@ -789,96 +899,44 @@ namespace "build" do
|
|
789
899
|
cp_r assets, eclipse_assets, :preserve => true
|
790
900
|
end
|
791
901
|
|
792
|
-
|
902
|
+
desc 'Building native extensioons'
|
903
|
+
task :extensions => ["config:android:extensions", :genconfig] do
|
904
|
+
|
905
|
+
Rake::Task["build:bundle:noxruby"].invoke
|
793
906
|
|
794
907
|
ENV['RHO_PLATFORM'] = 'android'
|
908
|
+
ENV["RHO_APP_DIR"] = $app_path
|
795
909
|
ENV["ANDROID_NDK"] = $androidndkpath
|
796
910
|
ENV["ANDROID_API_LEVEL"] = $found_api_level.to_s
|
797
911
|
ENV["TARGET_TEMP_DIR"] = $extensionsdir
|
798
912
|
ENV["RHO_ROOT"] = $startdir
|
799
913
|
ENV["BUILD_DIR"] ||= $startdir + "/platform/android/build"
|
800
914
|
ENV["RHO_INC"] = $appincdir
|
915
|
+
ENV["RHO_RES"] = $appres
|
801
916
|
ENV["RHO_ANDROID_TMP_DIR"] = $tmpdir
|
802
917
|
ENV["NEON_ROOT"] = $neon_root unless $neon_root.nil?
|
803
|
-
|
804
|
-
ext_build_files = File.join($extensionsdir, "ext_build.files")
|
805
|
-
if File.exist? ext_build_files
|
806
|
-
rm ext_build_files
|
807
|
-
end
|
918
|
+
ENV["CONFIG_XML"] = $config_xml unless $config_xml.nil?
|
808
919
|
|
809
920
|
mkdir_p $extensionsdir unless File.directory? $extensionsdir
|
810
921
|
|
811
|
-
$
|
812
|
-
|
813
|
-
|
814
|
-
|
815
|
-
|
816
|
-
puts "Checking extpath: #{extpath}"
|
817
|
-
|
818
|
-
if File.exists? extpath and File.directory? extpath
|
819
|
-
puts "#{extpath} is building..."
|
820
|
-
extyml = File.join(p, ext,"ext.yml")
|
821
|
-
if File.file? extyml
|
822
|
-
puts "#{extyml} is processing..."
|
823
|
-
extconf = Jake.config(File.open(extyml))
|
824
|
-
|
825
|
-
android_listener = extconf["android_rhodes_activity_listener"]
|
826
|
-
$ext_android_rhodes_activity_listener << android_listener unless android_listener.nil?
|
827
|
-
|
828
|
-
android_manifest_changes = extconf["android_manifest_changes"]
|
829
|
-
if android_manifest_changes != nil
|
830
|
-
android_manifest_changes = File.join(p, ext, android_manifest_changes)
|
831
|
-
$ext_android_manifest_changes << android_manifest_changes
|
832
|
-
end
|
833
|
-
|
834
|
-
android_resources_addons = extconf["android_resources_addons"]
|
835
|
-
if android_resources_addons != nil
|
836
|
-
android_resources_addons = File.join(p, ext, android_resources_addons)
|
837
|
-
$ext_android_resources_addons << android_resources_addons
|
838
|
-
end
|
839
|
-
|
840
|
-
android_additional_sources_list = extconf["android_additional_sources_list"]
|
841
|
-
if android_additional_sources_list != nil
|
842
|
-
android_additional_sources_list = File.join(p, ext, android_additional_sources_list)
|
843
|
-
|
844
|
-
File.open(android_additional_sources_list, "r") do |f|
|
845
|
-
while line = f.gets
|
846
|
-
$ext_android_additional_sources_list << File.join(p, ext, line)
|
847
|
-
end
|
848
|
-
end
|
849
|
-
end
|
850
|
-
|
851
|
-
android_additional_lib = extconf["android_additional_lib"]
|
852
|
-
if android_additional_lib != nil
|
853
|
-
android_additional_lib.each do |lib|
|
854
|
-
$ext_android_additional_lib << File.join(p, ext, lib)
|
855
|
-
end
|
856
|
-
end
|
857
|
-
|
858
|
-
puts "#{extyml} is processed"
|
859
|
-
end
|
860
|
-
|
861
|
-
if RUBY_PLATFORM =~ /(win|w)32$/
|
862
|
-
next unless File.exists? File.join(extpath, 'build.bat')
|
863
|
-
else
|
864
|
-
next unless File.executable? File.join(extpath, 'build')
|
865
|
-
end
|
866
|
-
|
867
|
-
ENV['TEMP_FILES_DIR'] = File.join(ENV["TARGET_TEMP_DIR"], ext)
|
868
|
-
|
869
|
-
if RUBY_PLATFORM =~ /(win|w)32$/
|
870
|
-
Jake.run('build.bat', [], extpath)
|
871
|
-
else
|
872
|
-
Jake.run('./build', [], extpath)
|
873
|
-
end
|
874
|
-
exit 1 unless $?.success?
|
922
|
+
$ext_android_build_scripts.each do |extpath, script|
|
923
|
+
ext = File.basename(File.dirname(extpath))
|
924
|
+
puts "Executing extension build script: #{ext}"
|
925
|
+
ENV['TEMP_FILES_DIR'] = File.join(ENV["TARGET_TEMP_DIR"], ext)
|
875
926
|
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
927
|
+
if RUBY_PLATFORM =~ /(win|w)32$/
|
928
|
+
Jake.run(script, [], extpath)
|
929
|
+
else
|
930
|
+
#puts '$$$$$$$$$$$$$$$$$$ START'
|
931
|
+
currentdir = Dir.pwd()
|
932
|
+
Dir.chdir extpath
|
933
|
+
sh %{$SHELL ./build}
|
934
|
+
Dir.chdir currentdir
|
935
|
+
#puts '$$$$$$$$$$$$$$$$$$ FINISH'
|
936
|
+
end
|
937
|
+
raise "Cannot build #{extpath}" unless $?.success?
|
938
|
+
puts "Extension build script finished"
|
939
|
+
end
|
882
940
|
end #task :extensions
|
883
941
|
|
884
942
|
task :libsqlite => "config:android" do
|
@@ -886,8 +944,8 @@ namespace "build" do
|
|
886
944
|
objdir = $objdir["sqlite"]
|
887
945
|
libname = $libname["sqlite"]
|
888
946
|
|
889
|
-
cc_build 'libsqlite', objdir, ["-I#{srcdir}", "-I#{$shareddir}"] or exit 1
|
890
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
947
|
+
cc_build 'libsqlite', objdir, ["-I\"#{srcdir}\"", "-I\"#{$shareddir}\""] or exit 1
|
948
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
891
949
|
end
|
892
950
|
|
893
951
|
task :libcurl => "config:android" do
|
@@ -905,12 +963,12 @@ namespace "build" do
|
|
905
963
|
|
906
964
|
args = []
|
907
965
|
args << "-DHAVE_CONFIG_H"
|
908
|
-
args << "-I#{srcdir}/../include"
|
909
|
-
args << "-I#{srcdir}"
|
910
|
-
args << "-I#{$shareddir}"
|
966
|
+
args << "-I\"#{srcdir}/../include\""
|
967
|
+
args << "-I\"#{srcdir}\""
|
968
|
+
args << "-I\"#{$shareddir}\""
|
911
969
|
|
912
970
|
cc_build 'libcurl', objdir, args or exit 1
|
913
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
971
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
914
972
|
end
|
915
973
|
|
916
974
|
task :libruby => "config:android" do
|
@@ -918,18 +976,20 @@ namespace "build" do
|
|
918
976
|
objdir = $objdir["ruby"]
|
919
977
|
libname = $libname["ruby"]
|
920
978
|
args = []
|
921
|
-
args << "-
|
922
|
-
args << "-
|
923
|
-
args << "-I#{srcdir}/
|
924
|
-
args << "-I#{srcdir}"
|
925
|
-
args << "-I#{srcdir}
|
926
|
-
args << "-I#{srcdir}
|
927
|
-
args << "-I#{
|
979
|
+
args << "-Wno-uninitialized"
|
980
|
+
args << "-Wno-missing-field-initializers"
|
981
|
+
args << "-I\"#{srcdir}/include\""
|
982
|
+
args << "-I\"#{srcdir}/android\""
|
983
|
+
args << "-I\"#{srcdir}/generated\""
|
984
|
+
args << "-I\"#{srcdir}\""
|
985
|
+
args << "-I\"#{srcdir}/..\""
|
986
|
+
args << "-I\"#{srcdir}/../sqlite\""
|
987
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
928
988
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
929
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
989
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
930
990
|
|
931
991
|
cc_build 'libruby', objdir, args or exit 1
|
932
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
992
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
933
993
|
end
|
934
994
|
|
935
995
|
task :libjson => "config:android" do
|
@@ -937,14 +997,14 @@ namespace "build" do
|
|
937
997
|
objdir = $objdir["json"]
|
938
998
|
libname = $libname["json"]
|
939
999
|
args = []
|
940
|
-
args << "-I#{srcdir}"
|
941
|
-
args << "-I#{srcdir}
|
942
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1000
|
+
args << "-I\"#{srcdir}\""
|
1001
|
+
args << "-I\"#{srcdir}/..\""
|
1002
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
943
1003
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
944
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1004
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
945
1005
|
|
946
1006
|
cc_build 'libjson', objdir, args or exit 1
|
947
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1007
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
948
1008
|
end
|
949
1009
|
|
950
1010
|
task :libstlport => "config:android" do
|
@@ -953,7 +1013,7 @@ namespace "build" do
|
|
953
1013
|
libname = $libname["stlport"]
|
954
1014
|
|
955
1015
|
args = []
|
956
|
-
args << "-I#{$stlport_includes}"
|
1016
|
+
args << "-I\"#{$stlport_includes}\""
|
957
1017
|
args << "-DTARGET_OS=android"
|
958
1018
|
args << "-DOSNAME=android"
|
959
1019
|
args << "-DCOMPILER_NAME=gcc"
|
@@ -966,7 +1026,7 @@ namespace "build" do
|
|
966
1026
|
args << "-fno-exceptions"
|
967
1027
|
|
968
1028
|
cc_build 'libstlport', objdir, args or exit 1
|
969
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1029
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
970
1030
|
end
|
971
1031
|
end
|
972
1032
|
|
@@ -975,13 +1035,13 @@ namespace "build" do
|
|
975
1035
|
objdir = $objdir["rholog"]
|
976
1036
|
libname = $libname["rholog"]
|
977
1037
|
args = []
|
978
|
-
args << "-I#{srcdir}
|
979
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1038
|
+
args << "-I\"#{srcdir}/..\""
|
1039
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
980
1040
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
981
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1041
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
982
1042
|
|
983
1043
|
cc_build 'librholog', objdir, args or exit 1
|
984
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1044
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
985
1045
|
end
|
986
1046
|
|
987
1047
|
task :librhomain => "config:android" do
|
@@ -989,29 +1049,29 @@ namespace "build" do
|
|
989
1049
|
objdir = $objdir["rhomain"]
|
990
1050
|
libname = $libname["rhomain"]
|
991
1051
|
args = []
|
992
|
-
args << "-I#{srcdir}"
|
993
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1052
|
+
args << "-I\"#{srcdir}\""
|
1053
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
994
1054
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
995
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1055
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
996
1056
|
|
997
1057
|
cc_build 'librhomain', objdir, args or exit 1
|
998
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1058
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
999
1059
|
end
|
1000
1060
|
|
1001
1061
|
task :librhocommon => "config:android" do
|
1002
1062
|
objdir = $objdir["rhocommon"]
|
1003
1063
|
libname = $libname["rhocommon"]
|
1004
1064
|
args = []
|
1005
|
-
args << "-I#{$shareddir}"
|
1006
|
-
args << "-I#{$shareddir}/curl/include"
|
1007
|
-
args << "-I#{$shareddir}/ruby/include"
|
1008
|
-
args << "-I#{$shareddir}/ruby/android"
|
1009
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1065
|
+
args << "-I\"#{$shareddir}\""
|
1066
|
+
args << "-I\"#{$shareddir}/curl/include\""
|
1067
|
+
args << "-I\"#{$shareddir}/ruby/include\""
|
1068
|
+
args << "-I\"#{$shareddir}/ruby/android\""
|
1069
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
1010
1070
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
1011
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1071
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
1012
1072
|
|
1013
1073
|
cc_build 'librhocommon', objdir, args or exit 1
|
1014
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1074
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
1015
1075
|
end
|
1016
1076
|
|
1017
1077
|
task :librhodb => "config:android" do
|
@@ -1019,15 +1079,15 @@ namespace "build" do
|
|
1019
1079
|
objdir = $objdir["rhodb"]
|
1020
1080
|
libname = $libname["rhodb"]
|
1021
1081
|
args = []
|
1022
|
-
args << "-I#{srcdir}"
|
1023
|
-
args << "-I#{srcdir}
|
1024
|
-
args << "-I#{srcdir}/../sqlite"
|
1025
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1082
|
+
args << "-I\"#{srcdir}\""
|
1083
|
+
args << "-I\"#{srcdir}/..\""
|
1084
|
+
args << "-I\"#{srcdir}/../sqlite\""
|
1085
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
1026
1086
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
1027
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1087
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
1028
1088
|
|
1029
1089
|
cc_build 'librhodb', objdir, args or exit 1
|
1030
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1090
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
1031
1091
|
end
|
1032
1092
|
|
1033
1093
|
task :librhosync => "config:android" do
|
@@ -1035,15 +1095,15 @@ namespace "build" do
|
|
1035
1095
|
objdir = $objdir["rhosync"]
|
1036
1096
|
libname = $libname["rhosync"]
|
1037
1097
|
args = []
|
1038
|
-
args << "-I#{srcdir}"
|
1039
|
-
args << "-I#{srcdir}
|
1040
|
-
args << "-I#{srcdir}/../sqlite"
|
1041
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1098
|
+
args << "-I\"#{srcdir}\""
|
1099
|
+
args << "-I\"#{srcdir}/..\""
|
1100
|
+
args << "-I\"#{srcdir}/../sqlite\""
|
1101
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
1042
1102
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
1043
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1103
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
1044
1104
|
|
1045
1105
|
cc_build 'librhosync', objdir, args or exit 1
|
1046
|
-
cc_ar libname, Dir.glob(objdir + "/**/*.o") or exit 1
|
1106
|
+
cc_ar ('"'+(libname)+'"'), Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'} or exit 1
|
1047
1107
|
end
|
1048
1108
|
|
1049
1109
|
task :libs => [:libsqlite, :libcurl, :libruby, :libjson, :libstlport, :librhodb, :librhocommon, :librhomain, :librhosync, :librholog]
|
@@ -1185,24 +1245,30 @@ namespace "build" do
|
|
1185
1245
|
task :gensources => [:genconfig, :gen_java_ext]
|
1186
1246
|
|
1187
1247
|
task :librhodes => [:libs, :gensources] do
|
1248
|
+
# add licence lib to build
|
1249
|
+
lic_dst = $extensionsdir + "/libMotorolaLicence.a"
|
1250
|
+
lic_src = $startdir + "/res/libs/motorolalicence/android/libMotorolaLicence.a"
|
1251
|
+
rm_f lic_dst
|
1252
|
+
cp lic_src, lic_dst
|
1253
|
+
|
1188
1254
|
srcdir = File.join $androidpath, "Rhodes", "jni", "src"
|
1189
1255
|
objdir = File.join $bindir, "libs", $confdir, $ndkabi, $ndkgccver, "librhodes"
|
1190
1256
|
libname = File.join $bindir, "libs", $confdir, $ndkabi, $ndkgccver, "librhodes.so"
|
1191
1257
|
|
1192
1258
|
args = []
|
1193
|
-
args << "-I#{$appincdir}"
|
1194
|
-
args << "-I#{srcdir}/../include"
|
1195
|
-
args << "-I#{srcdir}/../include/rhodes/details"
|
1196
|
-
args << "-I#{$shareddir}"
|
1197
|
-
args << "-I#{$shareddir}/common"
|
1198
|
-
args << "-I#{$shareddir}/sqlite"
|
1199
|
-
args << "-I#{$shareddir}/curl/include"
|
1200
|
-
args << "-I#{$shareddir}/ruby/include"
|
1201
|
-
args << "-I#{$shareddir}/ruby/android"
|
1202
|
-
args << "-I#{$std_includes}" unless $std_includes.nil?
|
1259
|
+
args << "-I\"#{$appincdir}\""
|
1260
|
+
args << "-I\"#{srcdir}/../include\""
|
1261
|
+
args << "-I\"#{srcdir}/../include/rhodes/details\""
|
1262
|
+
args << "-I\"#{$shareddir}\""
|
1263
|
+
args << "-I\"#{$shareddir}/common\""
|
1264
|
+
args << "-I\"#{$shareddir}/sqlite\""
|
1265
|
+
args << "-I\"#{$shareddir}/curl/include\""
|
1266
|
+
args << "-I\"#{$shareddir}/ruby/include\""
|
1267
|
+
args << "-I\"#{$shareddir}/ruby/android\""
|
1268
|
+
args << "-I\"#{$std_includes}\"" unless $std_includes.nil?
|
1203
1269
|
args << "-D__SGI_STL_INTERNAL_PAIR_H" if USE_OWN_STLPORT
|
1204
1270
|
args << "-D__NEW__" if USE_OWN_STLPORT
|
1205
|
-
args << "-I#{$stlport_includes}" if USE_OWN_STLPORT
|
1271
|
+
args << "-I\"#{$stlport_includes}\"" if USE_OWN_STLPORT
|
1206
1272
|
|
1207
1273
|
cc_build 'librhodes', objdir, args or exit 1
|
1208
1274
|
|
@@ -1212,9 +1278,9 @@ namespace "build" do
|
|
1212
1278
|
end
|
1213
1279
|
|
1214
1280
|
args = []
|
1215
|
-
args << "-L#{$rhobindir}/#{$confdir}/#{$ndkabi}/#{$ndkgccver}"
|
1216
|
-
args << "-L#{$bindir}/libs/#{$confdir}/#{$ndkabi}/#{$ndkgccver}"
|
1217
|
-
args << "-L#{$extensionsdir}"
|
1281
|
+
args << "-L\"#{$rhobindir}/#{$confdir}/#{$ndkabi}/#{$ndkgccver}\""
|
1282
|
+
args << "-L\"#{$bindir}/libs/#{$confdir}/#{$ndkabi}/#{$ndkgccver}\""
|
1283
|
+
args << "-L\"#{$extensionsdir}\""
|
1218
1284
|
|
1219
1285
|
rlibs = []
|
1220
1286
|
rlibs << "rhomain"
|
@@ -1254,12 +1320,12 @@ namespace "build" do
|
|
1254
1320
|
args += rlibs
|
1255
1321
|
|
1256
1322
|
mkdir_p File.dirname(libname) unless File.directory? File.dirname(libname)
|
1257
|
-
cc_link libname, Dir.glob(objdir + "/**/*.o"), args, deps or exit 1
|
1323
|
+
cc_link libname, Dir.glob(objdir + "/**/*.o").collect{|x| '"'+x+'"'}, args, deps or exit 1
|
1258
1324
|
|
1259
1325
|
destdir = File.join($androidpath, "Rhodes", "libs", "armeabi")
|
1260
1326
|
mkdir_p destdir unless File.exists? destdir
|
1261
1327
|
cp_r libname, destdir
|
1262
|
-
cc_run($stripbin, [File.join(destdir, File.basename(libname))])
|
1328
|
+
cc_run($stripbin, ['"'+File.join(destdir, File.basename(libname))+'"'])
|
1263
1329
|
end
|
1264
1330
|
|
1265
1331
|
# desc "Build Rhodes for android"
|
@@ -1360,27 +1426,23 @@ namespace "build" do
|
|
1360
1426
|
updated_f.close
|
1361
1427
|
|
1362
1428
|
#rm tappmanifest
|
1363
|
-
puts 'Manifest updated by extension saved!'
|
1429
|
+
puts 'Manifest updated by extension is saved!'
|
1364
1430
|
|
1365
1431
|
|
1366
1432
|
# RhodesActivity Listeners
|
1367
1433
|
f = StringIO.new("", "w+")
|
1368
1434
|
f.puts '// WARNING! THIS FILE IS GENERATED AUTOMATICALLY! DO NOT EDIT IT MANUALLY!'
|
1369
|
-
f.puts 'package com.rhomobile.rhodes;'
|
1370
|
-
f.puts ''
|
1371
|
-
f.puts 'import com.rhomobile.rhodes.phonebook.ContactAccessor;'
|
1435
|
+
f.puts 'package com.rhomobile.rhodes.extmanager;'
|
1372
1436
|
f.puts ''
|
1373
|
-
f.puts 'class
|
1437
|
+
f.puts 'class RhodesStartupListeners {'
|
1374
1438
|
f.puts ''
|
1375
1439
|
f.puts ' public static final String[] ourRunnableList = { ""'
|
1376
1440
|
$ext_android_rhodes_activity_listener.each do |a|
|
1377
1441
|
f.puts ' ,"'+a+'"'
|
1378
1442
|
end
|
1379
1443
|
f.puts ' };'
|
1380
|
-
f.puts ''
|
1381
1444
|
f.puts '}'
|
1382
|
-
Jake.modify_file_if_content_changed(
|
1383
|
-
|
1445
|
+
Jake.modify_file_if_content_changed($app_startup_listeners_java, f)
|
1384
1446
|
|
1385
1447
|
puts 'EXT: add additional files to project before build'
|
1386
1448
|
$ext_android_resources_addons.each do |r|
|
@@ -1392,11 +1454,18 @@ namespace "build" do
|
|
1392
1454
|
end
|
1393
1455
|
end
|
1394
1456
|
end
|
1457
|
+
|
1458
|
+
unless $config_xml.nil?
|
1459
|
+
rawres_path = File.join($tmpdir, 'res', 'raw')
|
1460
|
+
mkdir_p rawres_path unless File.exist? rawres_path
|
1461
|
+
cp $config_xml, File.join(rawres_path,'config.xml')
|
1462
|
+
end
|
1395
1463
|
|
1396
1464
|
generate_rjava
|
1397
1465
|
|
1398
1466
|
mkdir_p File.join($app_rjava_dir, "R") if not File.exists? File.join($app_rjava_dir, "R")
|
1399
1467
|
buf = File.new(File.join($app_rjava_dir, "R.java"),"r").read.gsub(/^\s*package\s*#{$app_package_name};\s*$/,"\npackage com.rhomobile.rhodes;\n")
|
1468
|
+
buf.gsub!(/public\s*static\s*final\s*int/, "public static int")
|
1400
1469
|
File.open(File.join($app_rjava_dir, "R", "R.java"),"w") { |f| f.write(buf) }
|
1401
1470
|
|
1402
1471
|
|
@@ -1414,9 +1483,6 @@ namespace "build" do
|
|
1414
1483
|
next if line == "platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/CalloutOverlay.java"
|
1415
1484
|
end
|
1416
1485
|
|
1417
|
-
#next if !$use_geomapping and line =~ /\/GoogleMapView\//
|
1418
|
-
#next if !$use_geomapping and line =~ /\/AnnotationsOverlay\//
|
1419
|
-
|
1420
1486
|
lines << line
|
1421
1487
|
end
|
1422
1488
|
end
|
@@ -1426,16 +1492,8 @@ namespace "build" do
|
|
1426
1492
|
lines << "\"" +$app_native_libs_java+"\""
|
1427
1493
|
lines << "\"" +$app_capabilities_java+"\""
|
1428
1494
|
lines << "\"" +$app_push_java+"\""
|
1495
|
+
lines << "\"" +$app_startup_listeners_java+"\""
|
1429
1496
|
|
1430
|
-
|
1431
|
-
# process collected ext src files
|
1432
|
-
puts 'process additional java files for build from extensions :'
|
1433
|
-
$ext_android_additional_sources_list.each do |s|
|
1434
|
-
s.chomp!
|
1435
|
-
puts 'java file : ' + s
|
1436
|
-
lines << s
|
1437
|
-
end
|
1438
|
-
|
1439
1497
|
File.open(newsrclist, "w") { |f| f.write lines.join("\n") }
|
1440
1498
|
srclist = newsrclist
|
1441
1499
|
|
@@ -1443,9 +1501,9 @@ namespace "build" do
|
|
1443
1501
|
classpath += $path_separator + $gapijar unless $gapijar.nil?
|
1444
1502
|
classpath += $path_separator + $motosol_jar unless $motosol_jar.nil?
|
1445
1503
|
classpath += $path_separator + File.join($tmpdir, 'Rhodes')
|
1446
|
-
Dir.glob(File.join($extensionsdir, "*.jar")).each do |f|
|
1447
|
-
classpath += $path_separator + f
|
1448
|
-
end
|
1504
|
+
# Dir.glob(File.join($extensionsdir, "*.jar")).each do |f|
|
1505
|
+
# classpath += $path_separator + f
|
1506
|
+
# end
|
1449
1507
|
|
1450
1508
|
javafilelists = [srclist]
|
1451
1509
|
|
@@ -1460,25 +1518,64 @@ namespace "build" do
|
|
1460
1518
|
java_compile(File.join($tmpdir, 'Rhodes'), classpath, javafilelists)
|
1461
1519
|
|
1462
1520
|
files = []
|
1463
|
-
Dir.glob(File.join($extensionsdir, "*.jar")).each do |f|
|
1464
|
-
puts Jake.run($jarbin, ["xf", f], File.join($tmpdir, 'Rhodes'))
|
1465
|
-
unless $?.success?
|
1466
|
-
puts "Error running jar (xf)"
|
1467
|
-
exit 1
|
1468
|
-
end
|
1469
|
-
end
|
1470
1521
|
Dir.glob(File.join($tmpdir, "Rhodes", "*")).each do |f|
|
1471
1522
|
relpath = Pathname.new(f).relative_path_from(Pathname.new(File.join($tmpdir, "Rhodes"))).to_s
|
1472
1523
|
files << relpath
|
1473
1524
|
end
|
1474
1525
|
unless files.empty?
|
1475
|
-
|
1526
|
+
jar = File.join($bindir, 'Rhodes.jar')
|
1527
|
+
args = ["cf", jar]
|
1476
1528
|
args += files
|
1477
|
-
|
1529
|
+
Jake.run($jarbin, args, File.join($tmpdir, "Rhodes"))
|
1478
1530
|
unless $?.success?
|
1479
|
-
|
1480
|
-
exit 1
|
1531
|
+
raise "Error creating #{jar}"
|
1481
1532
|
end
|
1533
|
+
$android_jars = [jar]
|
1534
|
+
end
|
1535
|
+
end
|
1536
|
+
|
1537
|
+
task :extensions_java => [:rhodes, :extensions] do
|
1538
|
+
puts 'Compile additional java files:'
|
1539
|
+
|
1540
|
+
classpath = $androidjar
|
1541
|
+
classpath += $path_separator + $gapijar unless $gapijar.nil?
|
1542
|
+
classpath += $path_separator + $motosol_jar unless $motosol_jar.nil?
|
1543
|
+
classpath += $path_separator + File.join($tmpdir, 'Rhodes')
|
1544
|
+
Dir.glob(File.join($extensionsdir, '*.jar')).each do |jar|
|
1545
|
+
classpath += $path_separator + jar
|
1546
|
+
end
|
1547
|
+
|
1548
|
+
$ext_android_additional_sources.each do |extpath, list|
|
1549
|
+
ext = File.basename(extpath)
|
1550
|
+
puts "Compiling '#{ext}' extension java sources: #{list}"
|
1551
|
+
|
1552
|
+
srclist = Tempfile.new "#{ext}SRC_build"
|
1553
|
+
lines = []
|
1554
|
+
File.open(list, "r") do |f|
|
1555
|
+
while line = f.gets
|
1556
|
+
line.chomp!
|
1557
|
+
srclist.write "\"#{File.join(extpath, line)}\"\n"
|
1558
|
+
#srclist.write "#{line}\n"
|
1559
|
+
end
|
1560
|
+
end
|
1561
|
+
srclist.close
|
1562
|
+
|
1563
|
+
mkdir_p File.join($tmpdir, ext)
|
1564
|
+
|
1565
|
+
#puts '$$$$$$$$$$$$$$$$$$ START'
|
1566
|
+
#currentdir = Dir.pwd()
|
1567
|
+
#Dir.chdir extpath
|
1568
|
+
java_compile(File.join($tmpdir, ext), classpath, [srclist.path])
|
1569
|
+
#Dir.chdir currentdir
|
1570
|
+
#puts '$$$$$$$$$$$$$$$$$$ FINISH'
|
1571
|
+
|
1572
|
+
extjar = File.join $bindir, ext + '.jar'
|
1573
|
+
args = ["cf", extjar, '.']
|
1574
|
+
Jake.run($jarbin, args, File.join($tmpdir, ext))
|
1575
|
+
unless $?.success?
|
1576
|
+
raise "Error creating #{extjar}"
|
1577
|
+
end
|
1578
|
+
$android_jars << extjar
|
1482
1579
|
end
|
1483
1580
|
end
|
1484
1581
|
|
@@ -1486,7 +1583,7 @@ namespace "build" do
|
|
1486
1583
|
#puts '$$$$$$$$$$$$$$$$$$'
|
1487
1584
|
#puts 'targetdir = '+$targetdir.to_s
|
1488
1585
|
#puts 'bindir = '+$bindir.to_s
|
1489
|
-
android_targetdir = File.join($targetdir, 'android')
|
1586
|
+
android_targetdir = $targetdir #File.join($targetdir, 'android')
|
1490
1587
|
mkdir_p android_targetdir if not File.exists? android_targetdir
|
1491
1588
|
zip_file_path = File.join(android_targetdir, 'upgrade_bundle.zip')
|
1492
1589
|
Jake.build_file_map(File.join($srcdir, "apps"), "rhofilelist.txt")
|
@@ -1494,7 +1591,7 @@ namespace "build" do
|
|
1494
1591
|
end
|
1495
1592
|
|
1496
1593
|
#desc "build all"
|
1497
|
-
task :all => [
|
1594
|
+
task :all => [:rhobundle, :rhodes, :extensions_java]
|
1498
1595
|
end
|
1499
1596
|
end
|
1500
1597
|
|
@@ -1502,15 +1599,20 @@ namespace "package" do
|
|
1502
1599
|
task :android => "build:android:all" do
|
1503
1600
|
puts "Running dx utility"
|
1504
1601
|
args = []
|
1602
|
+
args << "-Xmx1024m"
|
1505
1603
|
args << "-jar"
|
1506
1604
|
args << $dxjar
|
1507
1605
|
args << "--dex"
|
1508
1606
|
args << "--output=#{$bindir}/classes.dex"
|
1509
|
-
|
1510
|
-
|
1607
|
+
$android_jars.each do |jar|
|
1608
|
+
args << jar
|
1609
|
+
end
|
1610
|
+
Dir.glob(File.join($extensionsdir, "*.jar")).each do |jar|
|
1611
|
+
args << jar
|
1612
|
+
end
|
1613
|
+
Jake.run("java", args)
|
1511
1614
|
unless $?.success?
|
1512
|
-
|
1513
|
-
exit 1
|
1615
|
+
raise "Error running DX utility"
|
1514
1616
|
end
|
1515
1617
|
|
1516
1618
|
manifest = $appmanifest
|
@@ -1526,8 +1628,7 @@ namespace "package" do
|
|
1526
1628
|
args = ["package", "-f", "-M", manifest, "-S", resource, "-A", assets, "-I", $androidjar, "-F", resourcepkg]
|
1527
1629
|
puts Jake.run($aapt, args)
|
1528
1630
|
unless $?.success?
|
1529
|
-
|
1530
|
-
exit 1
|
1631
|
+
raise "Error running AAPT (1)"
|
1531
1632
|
end
|
1532
1633
|
|
1533
1634
|
# Workaround: manually add files starting with '_' because aapt silently ignore such files when creating package
|
@@ -1538,8 +1639,7 @@ namespace "package" do
|
|
1538
1639
|
args = ["uf", resourcepkg, relpath]
|
1539
1640
|
puts Jake.run($jarbin, args, $tmpdir)
|
1540
1641
|
unless $?.success?
|
1541
|
-
|
1542
|
-
exit 1
|
1642
|
+
raise "Error running AAPT (2)"
|
1543
1643
|
end
|
1544
1644
|
end
|
1545
1645
|
|
@@ -1560,15 +1660,14 @@ namespace "package" do
|
|
1560
1660
|
args = ["uf", resourcepkg]
|
1561
1661
|
# Strip them all to decrease size
|
1562
1662
|
Dir.glob($tmpdir + "/lib/armeabi/lib*.so").each do |lib|
|
1563
|
-
cc_run($stripbin, [lib])
|
1663
|
+
cc_run($stripbin, ['"'+lib+'"'])
|
1564
1664
|
args << "lib/armeabi/#{File.basename(lib)}"
|
1565
1665
|
end
|
1566
1666
|
puts Jake.run($jarbin, args, $tmpdir)
|
1567
1667
|
err = $?
|
1568
1668
|
rm_rf $tmpdir + "/lib"
|
1569
1669
|
unless err.success?
|
1570
|
-
|
1571
|
-
exit 1
|
1670
|
+
raise "Error running AAPT (3)"
|
1572
1671
|
end
|
1573
1672
|
end
|
1574
1673
|
end
|
@@ -1654,6 +1753,10 @@ namespace "device" do
|
|
1654
1753
|
|
1655
1754
|
puts "Signing APK file"
|
1656
1755
|
args = []
|
1756
|
+
args << "-sigalg"
|
1757
|
+
args << "MD5withRSA"
|
1758
|
+
args << "-digestalg"
|
1759
|
+
args << "SHA1"
|
1657
1760
|
args << "-verbose"
|
1658
1761
|
args << "-keystore"
|
1659
1762
|
args << $keystore
|
@@ -1868,6 +1971,7 @@ namespace "run" do
|
|
1868
1971
|
load_app_and_run
|
1869
1972
|
end
|
1870
1973
|
|
1974
|
+
desc "Run application on RhoSimulator"
|
1871
1975
|
task :rhosimulator => ["config:set_android_platform","config:common"] do
|
1872
1976
|
|
1873
1977
|
$emuversion = $app_config["android"]["version"] unless $app_config["android"].nil?
|
@@ -1940,6 +2044,7 @@ namespace "run" do
|
|
1940
2044
|
#puts 'Sleep for 5 sec. waiting for "adb start-server"'
|
1941
2045
|
#sleep 5
|
1942
2046
|
|
2047
|
+
rm_f $applog_path if !$applog_path.nil?
|
1943
2048
|
AndroidTools.logcat_process()
|
1944
2049
|
|
1945
2050
|
running = AndroidTools.is_emulator_running
|
@@ -1999,6 +2104,7 @@ namespace "run" do
|
|
1999
2104
|
Jake.run($adb, ['start-server'], nil, true)
|
2000
2105
|
adbRestarts += 1
|
2001
2106
|
|
2107
|
+
rm_f $applog_path if !$applog_path.nil?
|
2002
2108
|
AndroidTools.logcat_process()
|
2003
2109
|
else
|
2004
2110
|
puts "Still waiting..."
|
@@ -2056,8 +2162,9 @@ namespace "run" do
|
|
2056
2162
|
task :device => "device:android:install" do
|
2057
2163
|
puts "Starting application..."
|
2058
2164
|
AndroidTools.run_application("-d")
|
2059
|
-
|
2165
|
+
puts "Application was started"
|
2060
2166
|
AndroidTools.logcat_process("-d")
|
2167
|
+
puts "Starting log process ..."
|
2061
2168
|
end
|
2062
2169
|
end
|
2063
2170
|
|
@@ -2131,9 +2238,12 @@ namespace "clean" do
|
|
2131
2238
|
end
|
2132
2239
|
task :files => "config:android" do
|
2133
2240
|
rm_rf $targetdir
|
2134
|
-
rm_rf $bindir
|
2241
|
+
#rm_rf $bindir
|
2242
|
+
rm_rf File.join( $bindir, "libs" )
|
2243
|
+
Dir.glob( File.join( $bindir, "*.*" ) ) { |f| rm f, :force => true }
|
2135
2244
|
rm_rf $srcdir
|
2136
2245
|
rm_rf $libs
|
2246
|
+
rm_rf $tmpdir
|
2137
2247
|
end
|
2138
2248
|
task :libsqlite => "config:android" do
|
2139
2249
|
cc_clean "sqlite"
|
@@ -2148,7 +2258,7 @@ namespace "clean" do
|
|
2148
2258
|
rm_rf $bindir + "/libs/" + $confdir + "/" + $ndkabi + "/" + $ndkgccver + "/librhodes.so"
|
2149
2259
|
end
|
2150
2260
|
# desc "clean android"
|
2151
|
-
task :all => [:assets,:librhodes,:libs,:files]
|
2261
|
+
task :all => [:assets,:librhodes,:libs,:files]
|
2152
2262
|
end
|
2153
2263
|
end
|
2154
2264
|
|