Best way to open form from external app

Hi,

is there an example for this or a place to ge more information about this? I would like to do something similar. I would like to open a form by choose it out of a list in the browser of the mobile device. Or can I mask it in a hyperlink?

Martin

··· Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb tcluc...@gmail.com: > Hi there, I'm currently adapting the ODK Collect source code to a project I am working on. For this project I would like to have a "Task List" of interviews to be completed for specific interviewees with their name listed on the list. The user would then click on the name of the interviewee on the list which would take them straight to the entry screen for the appropriate form for that particular interviewee. In this context, I would like to ask: What is the best way to call the FormEntryActivity for a particular form (where we only know the name and ID of the form, not it's URI), possibly pre-populating some of the values of the form in advance? I'm tinkering with retrieving the appropriate URI for the form using the ContentProvider and then calling FormEntryActivity with an Intent matching that URI, but was wondering if there was a better way of doing this. > > Thanks in advance! > > Best, > > Lu

Martin,

If you are looking for a way to integrate ODK Collect with another app
on the device, take a look at ODK Tables at
https://code.google.com/p/opendatakit/source/browse?repo=tables.
Tables can launch Collect with data that can be injected into forms
and return any saved form data back to Tables.

It is possible to launch apps from the Android browser, but there is
no code in Collect to do so. If you'd like to implement it yourself,

has a good overview. Alternatively, you can hire a developer
(http://opendatakit.org/help/help-for-hire/) or file a feature request
(http://http://code.google.com/p/opendatakit/issues/list).

Yaw

··· -- Need ODK help? Go to http://nafundi.com for custom development, form design, implementation support, and user training for ODK.

On Sat, Mar 16, 2013 at 11:51 AM, Millemaker millemaker@googlemail.com wrote:

Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb tcluc...@gmail.com:

Hi there, I'm currently adapting the ODK Collect source code to a project I am working on. For this project I would like to have a "Task List" of interviews to be completed for specific interviewees with their name listed on the list. The user would then click on the name of the interviewee on the list which would take them straight to the entry screen for the appropriate form for that particular interviewee. In this context, I would like to ask: What is the best way to call the FormEntryActivity for a particular form (where we only know the name and ID of the form, not it's URI), possibly pre-populating some of the values of the form in advance? I'm tinkering with retrieving the appropriate URI for the form using the ContentProvider and then calling FormEntryActivity with an Intent matching that URI, but was wondering if there was a better way of doing this.

Thanks in advance!

Best,

Lu

Hi,

is there an example for this or a place to ge more information about this? I would like to do something similar. I would like to open a form by choose it out of a list in the browser of the mobile device. Or can I mask it in a hyperlink?

Martin

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Hello,

I'm also looking to be able to launch ODK Collect from another application
with a pre-populated form. Was this potential feature ever completed? I
can't find anything about the "Tables" application on the new GitHub (the
link Yaw pointed to was broken.)

Cheers,
Ethan Keller

··· On Monday, March 18, 2013 at 11:19:30 AM UTC-4, Yaw Anokwa wrote: > > Martin, > > If you are looking for a way to integrate ODK Collect with another app > on the device, take a look at ODK Tables at > https://code.google.com/p/opendatakit/source/browse?repo=tables. > Tables can launch Collect with data that can be injected into forms > and return any saved form data back to Tables. > > It is possible to launch apps from the Android browser, but there is > no code in Collect to do so. If you'd like to implement it yourself, > > http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228 > has a good overview. Alternatively, you can hire a developer > (http://opendatakit.org/help/help-for-hire/) or file a feature request > (http://http://code.google.com/p/opendatakit/issues/list). > > Yaw > -- > Need ODK help? Go to http://nafundi.com for custom development, form > design, implementation support, and user training for ODK. > > On Sat, Mar 16, 2013 at 11:51 AM, Millemaker <mille...@googlemail.com > wrote: > > Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb tcluc...@gmail.com: > > >> Hi there, I'm currently adapting the ODK Collect source code to a > project I am working on. For this project I would like to have a "Task > List" of interviews to be completed for specific interviewees with their > name listed on the list. The user would then click on the name of the > interviewee on the list which would take them straight to the entry screen > for the appropriate form for that particular interviewee. In this context, > I would like to ask: What is the best way to call the FormEntryActivity for > a particular form (where we only know the name and ID of the form, not it's > URI), possibly pre-populating some of the values of the form in advance? > I'm tinkering with retrieving the appropriate URI for the form using the > ContentProvider and then calling FormEntryActivity with an Intent matching > that URI, but was wondering if there was a better way of doing this. > >> > >> Thanks in advance! > >> > >> Best, > >> > >> Lu > > > > Hi, > > > > is there an example for this or a place to ge more information about > this? I would like to do something similar. I would like to open a form by > choose it out of a list in the browser of the mobile device. Or can I mask > it in a hyperlink? > > > > Martin > > > > -- > > -- > > Post: opend...@googlegroups.com > > Unsubscribe: opendatakit...@googlegroups.com > > Options: http://groups.google.com/group/opendatakit?hl=en > > > > --- > > You received this message because you are subscribed to the Google > Groups "ODK Community" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to opendatakit...@googlegroups.com . > > For more options, visit https://groups.google.com/groups/opt_out. > > > > >

The repos have been migrated to GitHub and the new link for Tables is
https://github.com/opendatakit/tables. In particular, the file that you
will want to start with is
tables_app/src/main/java/org/opendatakit/tables/utils/CollectUtil.java on
the master branch.

Clarice

··· On Thu, Mar 17, 2016 at 11:21 AM, Ethan Keller wrote:

Hello,

I'm also looking to be able to launch ODK Collect from another application
with a pre-populated form. Was this potential feature ever completed? I
can't find anything about the "Tables" application on the new GitHub (the
link Yaw pointed to was broken.)

Cheers,
Ethan Keller

On Monday, March 18, 2013 at 11:19:30 AM UTC-4, Yaw Anokwa wrote:

Martin,

If you are looking for a way to integrate ODK Collect with another app
on the device, take a look at ODK Tables at
https://code.google.com/p/opendatakit/source/browse?repo=tables.
Tables can launch Collect with data that can be injected into forms
and return any saved form data back to Tables.

It is possible to launch apps from the Android browser, but there is
no code in Collect to do so. If you'd like to implement it yourself,

http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228
has a good overview. Alternatively, you can hire a developer
(http://opendatakit.org/help/help-for-hire/) or file a feature request
(http://http://code.google.com/p/opendatakit/issues/list).

Yaw

Need ODK help? Go to http://nafundi.com for custom development, form
design, implementation support, and user training for ODK.

On Sat, Mar 16, 2013 at 11:51 AM, Millemaker mille...@googlemail.com wrote:

Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb
tcluc...@gmail.com:

Hi there, I'm currently adapting the ODK Collect source code to a
project I am working on. For this project I would like to have a "Task
List" of interviews to be completed for specific interviewees with their
name listed on the list. The user would then click on the name of the
interviewee on the list which would take them straight to the entry screen
for the appropriate form for that particular interviewee. In this context,
I would like to ask: What is the best way to call the FormEntryActivity for
a particular form (where we only know the name and ID of the form, not it's
URI), possibly pre-populating some of the values of the form in advance?
I'm tinkering with retrieving the appropriate URI for the form using the
ContentProvider and then calling FormEntryActivity with an Intent matching
that URI, but was wondering if there was a better way of doing this.

Thanks in advance!

Best,

Lu

Hi,

is there an example for this or a place to ge more information about
this? I would like to do something similar. I would like to open a form by
choose it out of a list in the browser of the mobile device. Or can I mask
it in a hyperlink?

Martin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Thanks so much for the fast reply! That file you referenced is quite a
beast. Is there some comprehensive documentation on Tables? I don't
understand how it works in conjunction with Collect.... Do I specify it as
a dependency within my fork of the collect code? And how do I use it from
an external app? It seems like I should call it using an explicit intent
from another app... Is there any example I could look at of how to do this?

Thanks so much for the help!

··· On Thursday, March 17, 2016 at 2:40:43 PM UTC-4, clarice larson wrote: > > The repos have been migrated to GitHub and the new link for Tables is > https://github.com/opendatakit/tables. In particular, the file that you > will want to start with is > tables_app/src/main/java/org/opendatakit/tables/utils/CollectUtil.java on > the master branch. > > Clarice > > > > On Thu, Mar 17, 2016 at 11:21 AM, Ethan Keller <ethan....@gmail.com > wrote: > >> Hello, >> >> I'm also looking to be able to launch ODK Collect from another >> application with a pre-populated form. Was this potential feature ever >> completed? I can't find anything about the "Tables" application on the new >> GitHub (the link Yaw pointed to was broken.) >> >> Cheers, >> Ethan Keller >> >> On Monday, March 18, 2013 at 11:19:30 AM UTC-4, Yaw Anokwa wrote: >>> >>> Martin, >>> >>> If you are looking for a way to integrate ODK Collect with another app >>> on the device, take a look at ODK Tables at >>> https://code.google.com/p/opendatakit/source/browse?repo=tables. >>> Tables can launch Collect with data that can be injected into forms >>> and return any saved form data back to Tables. >>> >>> It is possible to launch apps from the Android browser, but there is >>> no code in Collect to do so. If you'd like to implement it yourself, >>> >>> http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228 >>> has a good overview. Alternatively, you can hire a developer >>> (http://opendatakit.org/help/help-for-hire/) or file a feature request >>> (http://http://code.google.com/p/opendatakit/issues/list). >>> >>> Yaw >>> -- >>> Need ODK help? Go to http://nafundi.com for custom development, form >>> design, implementation support, and user training for ODK. >>> >>> On Sat, Mar 16, 2013 at 11:51 AM, Millemaker wrote: >>> > Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb >>> tcluc...@gmail.com: >>> >> Hi there, I'm currently adapting the ODK Collect source code to a >>> project I am working on. For this project I would like to have a "Task >>> List" of interviews to be completed for specific interviewees with their >>> name listed on the list. The user would then click on the name of the >>> interviewee on the list which would take them straight to the entry screen >>> for the appropriate form for that particular interviewee. In this context, >>> I would like to ask: What is the best way to call the FormEntryActivity for >>> a particular form (where we only know the name and ID of the form, not it's >>> URI), possibly pre-populating some of the values of the form in advance? >>> I'm tinkering with retrieving the appropriate URI for the form using the >>> ContentProvider and then calling FormEntryActivity with an Intent matching >>> that URI, but was wondering if there was a better way of doing this. >>> >> >>> >> Thanks in advance! >>> >> >>> >> Best, >>> >> >>> >> Lu >>> > >>> > Hi, >>> > >>> > is there an example for this or a place to ge more information about >>> this? I would like to do something similar. I would like to open a form by >>> choose it out of a list in the browser of the mobile device. Or can I mask >>> it in a hyperlink? >>> > >>> > Martin >>> > >>> > -- >>> > -- >>> > Post: opend...@googlegroups.com >>> > Unsubscribe: opendatakit...@googlegroups.com >>> > Options: http://groups.google.com/group/opendatakit?hl=en >>> > >>> > --- >>> > You received this message because you are subscribed to the Google >>> Groups "ODK Community" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an email to opendatakit...@googlegroups.com. >>> > For more options, visit https://groups.google.com/groups/opt_out. >>> > >>> > >>> >> -- >> -- >> Post: opend...@googlegroups.com >> Unsubscribe: opendatakit...@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit...@googlegroups.com . >> For more options, visit https://groups.google.com/d/optout. >> > >

The Tables documentation can be found at
https://opendatakit.org/use/2_0_tools/previous-distribution/odk-tables-2-0-rev126/.
The documentation there is intended for users and not developers. Developer
documentation for the 2.0 tools is not currently available.

The function in the CollectUtils file to look at would be addRowWithCollect.
Here you can see that an intent is used to launch Collect from Tables. You
should be able to use a similar mechanism in your application.

Clarice

··· On Thu, Mar 17, 2016 at 2:55 PM, Ethan Keller wrote:

Thanks so much for the fast reply! That file you referenced is quite a
beast. Is there some comprehensive documentation on Tables? I don't
understand how it works in conjunction with Collect.... Do I specify it as
a dependency within my fork of the collect code? And how do I use it from
an external app? It seems like I should call it using an explicit intent
from another app... Is there any example I could look at of how to do this?

Thanks so much for the help!

On Thursday, March 17, 2016 at 2:40:43 PM UTC-4, clarice larson wrote:

The repos have been migrated to GitHub and the new link for Tables is
https://github.com/opendatakit/tables. In particular, the file that you
will want to start with is
tables_app/src/main/java/org/opendatakit/tables/utils/CollectUtil.java on
the master branch.

Clarice

On Thu, Mar 17, 2016 at 11:21 AM, Ethan Keller ethan....@gmail.com wrote:

Hello,

I'm also looking to be able to launch ODK Collect from another
application with a pre-populated form. Was this potential feature ever
completed? I can't find anything about the "Tables" application on the new
GitHub (the link Yaw pointed to was broken.)

Cheers,
Ethan Keller

On Monday, March 18, 2013 at 11:19:30 AM UTC-4, Yaw Anokwa wrote:

Martin,

If you are looking for a way to integrate ODK Collect with another app
on the device, take a look at ODK Tables at
https://code.google.com/p/opendatakit/source/browse?repo=tables.
Tables can launch Collect with data that can be injected into forms
and return any saved form data back to Tables.

It is possible to launch apps from the Android browser, but there is
no code in Collect to do so. If you'd like to implement it yourself,

http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228
has a good overview. Alternatively, you can hire a developer
(http://opendatakit.org/help/help-for-hire/) or file a feature request
(http://http://code.google.com/p/opendatakit/issues/list).

Yaw

Need ODK help? Go to http://nafundi.com for custom development, form
design, implementation support, and user training for ODK.

On Sat, Mar 16, 2013 at 11:51 AM, Millemaker mille...@googlemail.com wrote:

Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb
tcluc...@gmail.com:

Hi there, I'm currently adapting the ODK Collect source code to a
project I am working on. For this project I would like to have a "Task
List" of interviews to be completed for specific interviewees with their
name listed on the list. The user would then click on the name of the
interviewee on the list which would take them straight to the entry screen
for the appropriate form for that particular interviewee. In this context,
I would like to ask: What is the best way to call the FormEntryActivity for
a particular form (where we only know the name and ID of the form, not it's
URI), possibly pre-populating some of the values of the form in advance?
I'm tinkering with retrieving the appropriate URI for the form using the
ContentProvider and then calling FormEntryActivity with an Intent matching
that URI, but was wondering if there was a better way of doing this.

Thanks in advance!

Best,

Lu

Hi,

is there an example for this or a place to ge more information about
this? I would like to do something similar. I would like to open a form by
choose it out of a list in the browser of the mobile device. Or can I mask
it in a hyperlink?

Martin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

This question should be asked on the opendatakit-developers@ list.

On Android, any app can launch another app if they specify the right
information in an Intent and call startActivityForResult(). The available
activities that can be started in this way are defined in the ODK Collect
manifest.

You should be able to wade into the CollectUtil file without requiring much
context from the Tables app. Just start with a reasonable method name.

This was documented on the opendatakit-developers@ list several years ago;
try searching for CollectUtils on that list.

··· On Thu, Mar 17, 2016 at 6:04 PM, clarice larson wrote:

The Tables documentation can be found at
https://opendatakit.org/use/2_0_tools/previous-distribution/odk-tables-2-0-rev126/.
The documentation there is intended for users and not developers. Developer
documentation for the 2.0 tools is not currently available.

The function in the CollectUtils file to look at would be addRowWithCollect.
Here you can see that an intent is used to launch Collect from Tables. You
should be able to use a similar mechanism in your application.

Clarice

On Thu, Mar 17, 2016 at 2:55 PM, Ethan Keller ethan.keller@gmail.com wrote:

Thanks so much for the fast reply! That file you referenced is quite a
beast. Is there some comprehensive documentation on Tables? I don't
understand how it works in conjunction with Collect.... Do I specify it as
a dependency within my fork of the collect code? And how do I use it from
an external app? It seems like I should call it using an explicit intent
from another app... Is there any example I could look at of how to do this?

Thanks so much for the help!

On Thursday, March 17, 2016 at 2:40:43 PM UTC-4, clarice larson wrote:

The repos have been migrated to GitHub and the new link for Tables is
https://github.com/opendatakit/tables. In particular, the file that
you will want to start with is
tables_app/src/main/java/org/opendatakit/tables/utils/CollectUtil.java on
the master branch.

Clarice

On Thu, Mar 17, 2016 at 11:21 AM, Ethan Keller ethan....@gmail.com wrote:

Hello,

I'm also looking to be able to launch ODK Collect from another
application with a pre-populated form. Was this potential feature ever
completed? I can't find anything about the "Tables" application on the new
GitHub (the link Yaw pointed to was broken.)

Cheers,
Ethan Keller

On Monday, March 18, 2013 at 11:19:30 AM UTC-4, Yaw Anokwa wrote:

Martin,

If you are looking for a way to integrate ODK Collect with another app
on the device, take a look at ODK Tables at
https://code.google.com/p/opendatakit/source/browse?repo=tables.
Tables can launch Collect with data that can be injected into forms
and return any saved form data back to Tables.

It is possible to launch apps from the Android browser, but there is
no code in Collect to do so. If you'd like to implement it yourself,

http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228
has a good overview. Alternatively, you can hire a developer
(http://opendatakit.org/help/help-for-hire/) or file a feature
request
(http://http://code.google.com/p/opendatakit/issues/list).

Yaw

Need ODK help? Go to http://nafundi.com for custom development, form
design, implementation support, and user training for ODK.

On Sat, Mar 16, 2013 at 11:51 AM, Millemaker mille...@googlemail.com wrote:

Am Dienstag, 13. November 2012 16:53:09 UTC+1 schrieb
tcluc...@gmail.com:

Hi there, I'm currently adapting the ODK Collect source code to a
project I am working on. For this project I would like to have a "Task
List" of interviews to be completed for specific interviewees with their
name listed on the list. The user would then click on the name of the
interviewee on the list which would take them straight to the entry screen
for the appropriate form for that particular interviewee. In this context,
I would like to ask: What is the best way to call the FormEntryActivity for
a particular form (where we only know the name and ID of the form, not it's
URI), possibly pre-populating some of the values of the form in advance?
I'm tinkering with retrieving the appropriate URI for the form using the
ContentProvider and then calling FormEntryActivity with an Intent matching
that URI, but was wondering if there was a better way of doing this.

Thanks in advance!

Best,

Lu

Hi,

is there an example for this or a place to ge more information about
this? I would like to do something similar. I would like to open a form by
choose it out of a list in the browser of the mobile device. Or can I mask
it in a hyperlink?

Martin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com