<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Asynchronous Geoprocessing App in ArcGIS Runtime SDK for Android Questions</title>
    <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236365#M1545</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Nice--thanks for that, Andy. That's the other route I was considering, as it's safer and probably more efficient. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Am I mistaken in thinking that it's creating a worker thread? If that's true, then any UI-related work would have to be run/posted to the UI thread, if I remember correctly. That includes things like showing toasts or adding graphics to the map...?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 11 May 2012 22:54:29 GMT</pubDate>
    <dc:creator>MarkDeaton</dc:creator>
    <dc:date>2012-05-11T22:54:29Z</dc:date>
    <item>
      <title>Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236361#M1541</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am trying to write an app to display results from an Asynchronous GP Task.&amp;nbsp; I looked at the Viewshed Example and tried to change that, but that is synchronous and changing the parameters passed and the URL to access my Asynchronous GP Tool results in an "execute operation is not allowed on this service" error, which I found is the result of calling the Asynchronous GP Tool using the .execute method rather than the .submitJob method.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Other things need to be changed in the code to get check the status of the job and get the results and display them, but I don't really know what to change.&amp;nbsp; Has anyone done anything like this and would you please post some code?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 May 2012 20:31:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236361#M1541</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-09T20:31:14Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236362#M1542</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Are you specifically wanting to use the &lt;/SPAN&gt;&lt;A href="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Elevation/ESRI_Elevation_World/GPServer/Viewshed"&gt;Viewshed&lt;/A&gt;&lt;SPAN&gt; service?&amp;nbsp; If so, it does not support asynchronous execution.&amp;nbsp; Before you can use the Geoprocessing task you have to know whether the task is asynchronous or synchronous.&amp;nbsp; This is described in the &lt;/SPAN&gt;&lt;A href="http://help.arcgis.com/en/arcgisserver/10.0/apis/rest/index.html?servicesdirectory.html"&gt;ArcGIS Services Directory&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 May 2012 06:12:06 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236362#M1542</guid>
      <dc:creator>DanO_Neill</dc:creator>
      <dc:date>2012-05-11T06:12:06Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236363#M1543</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Coincidentally, I just found myself needing to call an async GP service, too. In some other Esri APIs (such as Flex), the mechanism for using synchronous and asynchronous services is almost identical. But in Android, there's no event that calls a listener when processing is done, so it's up to you, the developer, to create a loop of some sort to check for results.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's a little incomplete bit of code; I adapted the Viewshed sample in the appropriate places. I hope it helps you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;gpJobID = gp.submitJob(params).getJobID();
// If no response in 60 seconds, cancel out
gpTimeout = new Timer();&amp;nbsp;&amp;nbsp; 
gpTimeout.schedule(new TimerTask() {
 @Override
 public void run() {
&amp;nbsp; uiHandler.sendEmptyMessage(CANCEL_LOADING_WINDOW);
 }
}, 60000);
// Check periodically for results
checkGPResults = new Timer();
checkGPResults.scheduleAtFixedRate(new TimerTask() {
 @Override
 public void run() {
&amp;nbsp; try {
&amp;nbsp;&amp;nbsp; GPJobResource gpJR = gp.checkJobStatus(gpJobID);
&amp;nbsp;&amp;nbsp; if ( gpJR.getJobStatus() == JobStatus.succeeded ) {
&amp;nbsp;&amp;nbsp;&amp;nbsp; uiHandler.sendEmptyMessage(CLOSE_LOADING_WINDOW);
&amp;nbsp;&amp;nbsp;&amp;nbsp; checkGPResults.cancel();
&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrOutputResults.removeAll();
&amp;nbsp;&amp;nbsp;&amp;nbsp; GPParameter result = 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.getResultData( gpJobID, "SewerMainsTraced" );
&amp;nbsp;&amp;nbsp;&amp;nbsp; GPFeatureRecordSetLayer resultFeats = (GPFeatureRecordSetLayer) result;
&amp;nbsp;&amp;nbsp;&amp;nbsp; for (Graphic feature : resultFeats.getGraphics()) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Geometry geom = feature.getGeometry();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; final Graphic g = new Graphic(geom, new SimpleLineSymbol(Color.CYAN, 2));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrOutputResults.addGraphic(g);
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; else if ( gpJR.getJobStatus() == JobStatus.failed ) {
&amp;nbsp;&amp;nbsp;&amp;nbsp; uiHandler.sendEmptyMessage(CLOSE_LOADING_WINDOW);
&amp;nbsp;&amp;nbsp;&amp;nbsp; checkGPResults.cancel();
&amp;nbsp;&amp;nbsp;&amp;nbsp; showToast( "Error in tracing: " + gpJR.getMessages()[ gpJR.getMessages().length-1 ].toString(), Toast.LENGTH_LONG );
&amp;nbsp;&amp;nbsp; }
&amp;nbsp; }
&amp;nbsp; catch (final Exception exc) {
&amp;nbsp;&amp;nbsp; Log.e(TAG, exc.getMessage());
&amp;nbsp;&amp;nbsp; showToast("Error in tracing: " + exc.getMessage(), Toast.LENGTH_LONG);
&amp;nbsp; }
 }
}, 2000, 2000);
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:55:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236363#M1543</guid>
      <dc:creator>MarkDeaton</dc:creator>
      <dc:date>2021-12-11T11:55:15Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236364#M1544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;In addition to Mark's code snippet, here's some additional code taken from a Clip and Ship demo that shows another pattern for coding against an asynchronous GP service. The full sample code will be included with the v3 release of our SDK later this year. Or, if you want to see the full app sooner then ping me: agup at esri dot com.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;strmv.setParamName("Layers_to_Clip");

strmv.setValues(arrayList);

final ArrayList&amp;lt;GPParameter&amp;gt; paramlist = new ArrayList&amp;lt;GPParameter&amp;gt;();
paramlist.add(strmv);
paramlist.add(areaofinterest);
paramlist.add(featureformat);

handler = new Handler();
submitJobandPolling(gp, paramlist);&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; /**
&amp;nbsp; * Method submitJobandPolling.
&amp;nbsp; * @param gp Geoprocessor
&amp;nbsp; * @param params List&amp;lt;GPParameter&amp;gt;
&amp;nbsp; */
 void submitJobandPolling(final Geoprocessor gp,
&amp;nbsp;&amp;nbsp; List&amp;lt;GPParameter&amp;gt; params) {
&amp;nbsp; try {
&amp;nbsp;&amp;nbsp; GPJobResource gpjr1 = gp.submitJob(params);
&amp;nbsp;&amp;nbsp; JobStatus jobstatus = gpjr1.getJobStatus();
&amp;nbsp;&amp;nbsp; final String jobid = gpjr1.getJobID();
&amp;nbsp;&amp;nbsp; Log.d("Test", "jobid " + jobid);
&amp;nbsp;&amp;nbsp; Log.d("Test", "jobstatus " + jobstatus);

&amp;nbsp;&amp;nbsp; // if (!jobstatus.equals("esriJobSucceeded")) {
&amp;nbsp;&amp;nbsp; if (jobstatus != JobStatus.succeeded) {

&amp;nbsp;&amp;nbsp;&amp;nbsp; handler.postDelayed(new Runnable() {

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void run() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPJobResource gpjr2 = gp.checkJobStatus(jobid);&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPMessage[] messages = gpjr2.getMessages();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( messages!= null &amp;amp;&amp;amp; messages.length &amp;gt; 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; messages.length; i++) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "Message: " + messages&lt;I&gt;.getDescription());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "Polling thread is: "
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + Thread.currentThread().getName());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JobStatus status = gpjr2.getJobStatus();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; boolean jobcomplete = false;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == JobStatus.canceled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.deleted
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.failed || status == JobStatus.succeeded
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.timedOut) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcomplete = true;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (jobcomplete) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == JobStatus.succeeded) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPDataFile outputZipfile = (GPDataFile) gp
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getResultData(jobid, "Output_Zip_File");

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "zip file is "
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + outputZipfile.getUrl().toURI()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .toString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "GP failed");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; handler.postDelayed(this, 5000);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (Exception e) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // TODO Auto-generated catch block
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }, 4000);

&amp;nbsp;&amp;nbsp; }
&amp;nbsp; } catch (Exception e) {
&amp;nbsp;&amp;nbsp; // TODO Auto-generated catch block
&amp;nbsp;&amp;nbsp; e.printStackTrace();
&amp;nbsp; }

 }&lt;/I&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:55:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236364#M1544</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2021-12-11T11:55:18Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236365#M1545</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Nice--thanks for that, Andy. That's the other route I was considering, as it's safer and probably more efficient. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Am I mistaken in thinking that it's creating a worker thread? If that's true, then any UI-related work would have to be run/posted to the UI thread, if I remember correctly. That includes things like showing toasts or adding graphics to the map...?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 May 2012 22:54:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236365#M1545</guid>
      <dc:creator>MarkDeaton</dc:creator>
      <dc:date>2012-05-11T22:54:29Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236366#M1546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Mark, thanks for bringing that up as I was thinking the same thing right after I posted it. Yes, if you use Handler, rather than AsyncTask, you have to use the MessageQueue to send and handle messages relative to the main thread. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For the benefit of others that read this and may be wondering when to use AsyncTask and when to use Handler: I suggest that AsyncTask is perfect for simple jobs such as a straight forward REST request/response. And, that you should consider using Handler for jobs that require an additional level of control, or advanced execution and processing.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This was just a prototype sample, but I believe we do need to tweak it so that it shows how to loop information back into the UI thread and complete the cycle. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If others have any experience with either of these please feel free to share what you have learned.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Andy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 May 2012 14:28:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236366#M1546</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2012-05-14T14:28:40Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236367#M1547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Are you specifically wanting to use the &lt;A href="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Elevation/ESRI_Elevation_World/GPServer/Viewshed"&gt;Viewshed&lt;/A&gt; service?&amp;nbsp; If so, it does not support asynchronous execution.&amp;nbsp; Before you can use the Geoprocessing task you have to know whether the task is asynchronous or synchronous.&amp;nbsp; This is described in the &lt;A href="http://help.arcgis.com/en/arcgisserver/10.0/apis/rest/index.html?servicesdirectory.html"&gt;ArcGIS Services Directory&lt;/A&gt;.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Well, I was trying to use a= Viewshed Async Task that someone at my agency created, but she just changed it to sychronous so I can try use the viewshed example and modify it to call her service.&amp;nbsp; With that, I am still having an issue when the service is called.&amp;nbsp; I get an error:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;com.esri.core.io.EsriServiceException: Error executing task 'ViewShed'. Please check your parameters.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;All I am is passing a point to the service with the the attributes (RADIUS1, AZIMUTH1, etc) in the point set through the Graphic.&amp;nbsp; I don't see what parameter would be wrong.&amp;nbsp; Here is a few snips of my code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;public void onSingleTap(float x, float y) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mappoint = map.toMapPoint(x, y);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(offsetA, 1.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(offsetB, 0.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(azimmuth1, 0.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(azimmuth2, 180.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(vert1, 90.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(vert2, -90.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(radius1, 0.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; observerAttributes.put(radius2, 2000.0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Graphic g = new Graphic(1, mappoint, new SimpleMarkerSymbol(&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Color.RED, 10, STYLE.CIRCLE), observerAttributes, null);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gLayer.addGraphic(g);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; public void start(Point mappoint) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; // First input parameter&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; GPFeatureRecordSetLayer gpf = new GPFeatureRecordSetLayer(&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "InputPoint");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; gpf.setSpatialReference(map.getSpatialReference());&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; gpf.setGeometryType(Geometry.Type.Point);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; // Add the point selected by the user&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Graphic f = new Graphic(2, mappoint, new SimpleMarkerSymbol(Color.RED,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25, STYLE.DIAMOND), observerAttributes, null);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; gpf.addGraphic(f);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; // Add params&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; params = new ArrayList&amp;lt;GPParameter&amp;gt;();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; params.add(gpf);&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 May 2012 22:24:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236367#M1547</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-18T22:24:26Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236368#M1548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;@lcatania You may have already done this, did you compare the parameters set in your code with the parameters documented in your Geoprocessing Service REST endpoint?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As a second suggestion, do you have another working sample that uses the same service that you can compare the HTTP request against? &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Andy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2012 15:58:20 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236368#M1548</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2012-05-21T15:58:20Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236369#M1549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I found it very difficult to troubleshoot GP parameter issues until I pointed my device to a Fiddler proxy running on my PC. Once I was able to spy on the JSON requests going over the wire, I was able to copy/paste those parameters into a web browser at the GP service REST endpoint. The problems quickly became apparent...&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2012 18:47:59 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236369#M1549</guid>
      <dc:creator>MarkDeaton</dc:creator>
      <dc:date>2012-05-21T18:47:59Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236370#M1550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I found it very difficult to troubleshoot GP parameter issues until I pointed my device to a Fiddler proxy running on my PC. Once I was able to spy on the JSON requests going over the wire, I was able to copy/paste those parameters into a web browser at the GP service REST endpoint. The problems quickly became apparent...&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;How exactly do you point the device to fiddler?&amp;nbsp; I have used fiddler before, but I used it on my PC when I was running a flex client.&amp;nbsp;&amp;nbsp; How do you have fiddler see the traffic from the device.&amp;nbsp; And the device is not sending HTTP requests directly since it is using the androi API to make the GP calls.&amp;nbsp; How do you monitor the traffic?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2012 19:39:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236370#M1550</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-21T19:39:17Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236371#M1551</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;RE: debugging HTTP requests on Android here's a blog post that may help: &lt;/SPAN&gt;&lt;A href="http://www.andygup.net/?p=695"&gt;http://www.andygup.net/?p=695&lt;/A&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Andy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2012 19:47:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236371#M1551</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2012-05-21T19:47:26Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236372#M1552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;@lcatania You may have already done this, did you compare the parameters set in your code with the parameters documented in your Geoprocessing Service REST endpoint?&lt;BR /&gt;&lt;BR /&gt;As a second suggestion, do you have another working sample that uses the same service that you can compare the HTTP request against? &lt;BR /&gt;&lt;BR /&gt;-Andy&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Yes.&amp;nbsp; The first time, I found I forgot to change one of the parameter names, but after I fixed it, I still have the same issues.&amp;nbsp; Since viewshed has multiple parameters in as attributes, I created a simpler service the GP Service, Buffer Points.&amp;nbsp; I followed the example &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/GP_service_step_by_step_Buffer_points/002v00000014000000/"&gt;http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/GP_service_step_by_step_Buffer_points/002v00000014000000/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It works fine in the desktop as a local tool and fine when I publish it and it is initially Asynchronous, but when I change it to synchronous, the service runs and the status bar at bottom of window shows that it is running, but it runs forever.&amp;nbsp; The GP messages says it succedded, though it has 3 messages stating it succeeded, nothing shows up.&amp;nbsp; When I called the service from my device, I get the "com.esri.core.io.EsriServiceException: Error executing task 'Buffer Points'. Please check your parameters." Message.&amp;nbsp; I attached the messages from the tool when calling it in the desktop.&amp;nbsp; Don't know why it shows the tool as storing output in the jobs directory since the tool is published as synchronous.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2012 20:50:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236372#M1552</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-21T20:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236373#M1553</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Do you have any messages in the ArcGIS Server log?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is a similar post with information that might help: &lt;/SPAN&gt;&lt;A href="http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service"&gt;http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Andy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 May 2012 18:47:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236373#M1553</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2012-05-22T18:47:41Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236374#M1554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Do you have any messages in the ArcGIS Server log?&lt;BR /&gt;&lt;BR /&gt;Here is a similar post with information that might help: &lt;A href="http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service"&gt;http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;-Andy&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I did come across that in my search for answers.&amp;nbsp; Other than the correction to use a file system output rather than in memory, nothing else applies.&amp;nbsp; I already use a file system.&amp;nbsp; As in a previous post in this thread, I create a simple buffer model using the exact steps outlined by ESRI's tutorial.&amp;nbsp; That is teh one I publish and try to hit through my tablet device.&amp;nbsp; I would like to see someone from ESRI successfully provide example code to do that.&amp;nbsp; Or provide the model that the android Viewshed example hits.&amp;nbsp; The code is provided for that, but the service is on an ESRI server and I don't know what the model looks like.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have many services I need to access in this project I am working on and hope once I get one to work, implementing the others will be simple, but I am stuck at the moment.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 May 2012 12:08:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236374#M1554</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-23T12:08:24Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236375#M1555</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;In addition to Mark's code snippet, here's some additional code taken from a Clip and Ship demo that shows another pattern for coding against an asynchronous GP service. The full sample code will be included with the v3 release of our SDK later this year. Or, if you want to see the full app sooner then ping me: agup at esri dot com.&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;strmv.setParamName("Layers_to_Clip");

strmv.setValues(arrayList);

final ArrayList&amp;lt;GPParameter&amp;gt; paramlist = new ArrayList&amp;lt;GPParameter&amp;gt;();
paramlist.add(strmv);
paramlist.add(areaofinterest);
paramlist.add(featureformat);

handler = new Handler();
submitJobandPolling(gp, paramlist);&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; /**
&amp;nbsp; * Method submitJobandPolling.
&amp;nbsp; * @param gp Geoprocessor
&amp;nbsp; * @param params List&amp;lt;GPParameter&amp;gt;
&amp;nbsp; */
 void submitJobandPolling(final Geoprocessor gp,
&amp;nbsp;&amp;nbsp; List&amp;lt;GPParameter&amp;gt; params) {
&amp;nbsp; try {
&amp;nbsp;&amp;nbsp; GPJobResource gpjr1 = gp.submitJob(params);
&amp;nbsp;&amp;nbsp; JobStatus jobstatus = gpjr1.getJobStatus();
&amp;nbsp;&amp;nbsp; final String jobid = gpjr1.getJobID();
&amp;nbsp;&amp;nbsp; Log.d("Test", "jobid " + jobid);
&amp;nbsp;&amp;nbsp; Log.d("Test", "jobstatus " + jobstatus);

&amp;nbsp;&amp;nbsp; // if (!jobstatus.equals("esriJobSucceeded")) {
&amp;nbsp;&amp;nbsp; if (jobstatus != JobStatus.succeeded) {

&amp;nbsp;&amp;nbsp;&amp;nbsp; handler.postDelayed(new Runnable() {

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void run() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPJobResource gpjr2 = gp.checkJobStatus(jobid);&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPMessage[] messages = gpjr2.getMessages();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( messages!= null &amp;amp;&amp;amp; messages.length &amp;gt; 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; messages.length; i++) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "Message: " + messages&lt;I&gt;.getDescription());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "Polling thread is: "
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + Thread.currentThread().getName());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JobStatus status = gpjr2.getJobStatus();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; boolean jobcomplete = false;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == JobStatus.canceled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.deleted
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.failed || status == JobStatus.succeeded
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; || status == JobStatus.timedOut) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcomplete = true;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (jobcomplete) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == JobStatus.succeeded) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPDataFile outputZipfile = (GPDataFile) gp
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getResultData(jobid, "Output_Zip_File");

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "zip file is "
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + outputZipfile.getUrl().toURI()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .toString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d("Test", "GP failed");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; handler.postDelayed(this, 5000);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (Exception e) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // TODO Auto-generated catch block
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }, 4000);

&amp;nbsp;&amp;nbsp; }
&amp;nbsp; } catch (Exception e) {
&amp;nbsp;&amp;nbsp; // TODO Auto-generated catch block
&amp;nbsp;&amp;nbsp; e.printStackTrace();
&amp;nbsp; }

 }&lt;/I&gt;&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Are areaofinterest and featureformat declared as GPJobParameters?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:55:20 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236375#M1555</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2021-12-11T11:55:20Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236376#M1556</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Do you have any messages in the ArcGIS Server log?&lt;BR /&gt;&lt;BR /&gt;Here is a similar post with information that might help: &lt;A href="http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service"&gt;http://forums.arcgis.com/threads/27763-Problem-with-Geoprocessing-Service&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;-Andy&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;No messages at all in the log in regard to this service other then some issues I had initially starting the service.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 May 2012 12:34:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236376#M1556</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-23T12:34:58Z</dc:date>
    </item>
    <item>
      <title>Re: Asynchronous Geoprocessing App</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236377#M1557</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;RE: debugging HTTP requests on Android here's a blog post that may help: &lt;A href="http://www.andygup.net/?p=695"&gt;http://www.andygup.net/?p=695&lt;/A&gt; &lt;BR /&gt;&lt;BR /&gt;-Andy&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;When I run the app in the emulator, I receive errors:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;java.lang.IllegalArgumentException: No configs match configSpec&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;com.esri.android.map.MapSurface$a.chooseConfig(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1009)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 May 2012 12:51:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-android-questions/asynchronous-geoprocessing-app/m-p/236377#M1557</guid>
      <dc:creator>LukeCatania</dc:creator>
      <dc:date>2012-05-23T12:51:09Z</dc:date>
    </item>
  </channel>
</rss>

