On Thursday, February 13, 2014, Ami Gandhi <[email protected]> wrote:
> > > But calling view from Phonegap is very slow! > Having this logs all the time. > 02-14 00:45:05.685: D/dalvikvm(6462): WAIT_FOR_CONCURRENT_GC blocked 14ms > 02-14 00:45:05.715: V/CBLDatabase(6462): call map for sequence=14 > 02-14 00:45:05.750: D/dalvikvm(6462): GC_CONCURRENT freed 492K, 27% free > 13190K/17863K, paused 2ms+2ms, total 23ms > Have you taken a look at the Android Monitor / DDMS to see where the memory is being used? > > So, moving on native approach. > Did you follow the instructions from Daniel Carr above? Did you comment out the call to "CBLView.setCompiler(new CBLJavaScriptViewCompiler());" Another thing that could be going wrong, are you defining a view with the exact same name for the javascript based view you defined? I would recommend using a different name so they don't conflict. > But it is not working when I call view "amiview" from phonegap. > Is there an error message? > On Thursday, February 13, 2014 11:21:18 PM UTC+5:30, Traun Leyden wrote: >> >> >> I think there should be examples of that in https://github.com/ >> couchbaselabs/TodoLite-PhoneGap. >> >> It should essentially be the same as making a view query via REST to >> CouchDB, so you can also check the CouchDB docs. >> >> @Chris -- I guess the recommended js library for talking to Couchbase >> Lite from javascript is "coax/hoax" right? Is there any others that people >> should be aware of that will make their lives easier? >> >> On Thursday, February 13, 2014, Ami Gandhi <[email protected]> wrote: >> >> Hi! >> Can you tell me how to query CBLView from phonegap android? >> Also, how to set startkey and endkey? >> >> On Monday, October 21, 2013 11:28:38 PM UTC+5:30, Traun Leyden wrote: >> >> Thanks for contributing this! >> >> >> On Sun, Oct 20, 2013 at 5:16 PM, Daniel Carr <[email protected]>wrote: >> >> Thanks for your replies. >> >> If anyone is keen to try this, it's pretty easy. I know very little java >> and was able to work it out, and the performance is way better. >> >> >> To get it to work, clone the git repo and import the modified cloned repo >> as a phonegap plugin: >> >> git clone https://github.com/couchbaselabs/Couchbase-Lite-PhoneGap- >> Plugin.git >> cd project >> phonegap local plugin add ../Couchbase-List-PhoneGap-Plugin >> >> >> Every time you modify the plugin, you need to remove and add it again. >> >> phonegap local plugin remove com.couchbase.lite.phonegap >> phonegap local plugin add ../Couchbase-List-PhoneGap-Plugin >> >> >> >> As a proof of concept, I edited /src/android/CBLite.java file in >> Cordova-Lite-PhoneGap-Plugin. >> >> Add these to the imports: >> >> import com.couchbase.cblite.CBLDatabase; >> import com.couchbase.cblite.CBLViewMapBlock; >> import com.couchbase.cblite.CBLViewMapEmitBlock; >> >> >> Remove the Javascript View thingy: >> >> - CBLView.setCompiler(new >> CBLJavaScriptViewCompiler()); >> >> >> >> Declare a view as described here: http://docs.couchbase.co >> m/couchbase-lite/cbl-android/#working-with-views >> >> >> >> e.g.: (sorry about the dodgy tabulation) >> >> >> @@ -41,12 +45,25 @@ public class CBLite extends CordovaPlugin { >> >> CBLURLStreamHandlerFactory.reg >> isterSelfIgnoreError(); >> >> - CBLView.setCompiler(new >> CBLJavaScriptViewCompiler()); >> - >> String filesDir = this.cordova.getActivity().get >> FilesDir() >> .getAbsolutePath(); >> CBLServer server = startCBLite(filesDir); >> - >> + >> + CBLDatabase db = server.getDatabaseNamed("treat >> ment"); >> + CBLView testView = db.getViewNamed("ivetTest/test >> "); >> + testView.setMapReduceBlocks(new >> CBLViewMapBlock() { >> + >> + @Override >> + public void map(Map<String, Object> document, >> CBLViewMapEmitBlock emitter) { >> + String type = (String)document.get("Type"); >> + if( "TreatmentRecord".equals( >> >> -- > You received this message because you are subscribed to the Google Groups > "Couchbase Mobile" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to > [email protected]<javascript:_e(%7B%7D,'cvml','mobile-couchbase%[email protected]');> > . > To view this discussion on the web visit > https://groups.google.com/d/msgid/mobile-couchbase/bc488580-9fab-4f22-8a51-a0bc697e931f%40googlegroups.com > . > For more options, visit https://groups.google.com/groups/opt_out. > -- You received this message because you are subscribed to the Google Groups "Couchbase Mobile" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/mobile-couchbase/CACSSHCHskg2tQ2ce8TckCh0j0PFZ314aidUP6UfztFhn2%3DqwVg%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.
