POST
|
Thanks! That solved the problemn. The customer had different Editing options enabled in ArcGIS Pro Settings.
... View more
10-26-2020
07:37 AM
|
0
|
0
|
1724
|
POST
|
I will check this. But it would be strange if it is activated for the Feature Classes and not for the Table. The user doesn't interact with th UI during those editions. Thanks for your input!
... View more
10-25-2020
11:55 PM
|
0
|
0
|
1724
|
POST
|
Good morning! I'm building a plugin for ArcGis Pro that performs several editions over a File GeoDatabase.The first step are populate several of the feature classes and tables inside that File GeoDatabase. I have zero issues with it, but the person who will use it keeps getting this error: I have no idea why the "Editing in the application is not enabled" is happening. That error message appears when a non-geometric table is written (the last step). Before that, several features classes are updated the same way without any problem. I use the same code for every insert method, so I don't understand why the last method is giving that error to that person and it is working fine on my side. Public Async Function storeMetadata(metadatos As METADATOS, gdbPath As String) As Task(Of Boolean)
Dim message As String = String.Empty
Dim creationResult As Boolean = False
Await QueuedTask.Run(Function()
Using geodatabase As Geodatabase = New Geodatabase(New FileGeodatabaseConnectionPath(New Uri(gdbPath)))
Using gca_metadatos As Table = geodatabase.OpenDataset(Of Table)("GCA_Metadatos")
Dim editOperation As EditOperation = New EditOperation()
Try
editOperation.Callback(Function(context)
Using rowBuffer As RowBuffer = gca_metadatos.CreateRowBuffer()
rowBuffer("IDTRANSACCION") = metadatos.IDTRANSACCION
'More fields here
Using row As Row = gca_metadatos.CreateRow(rowBuffer)
context.Invalidate(row)
End Using
End Using
End Function, gca_metadatos)
Catch ex As Exception
MessageBox.Show("Error guardar metadatos (I): " & ex.Message)
End Try
Try
creationResult = editOperation.Execute()
If Not creationResult Then message = editOperation.ErrorMessage
Catch exObj As GeodatabaseException
message = exObj.Message
GCA_Common.Application.EscribirError(GCA_Common.Application.AlmacenarError(exObj))
End Try
End Using
End Using
Return True
End Function)
If Not String.IsNullOrEmpty(message) Then
Return False
Else
Return True
End If
End Function Thanks for any help provided!
... View more
10-23-2020
04:41 AM
|
0
|
3
|
1775
|
IDEA
|
Yes. I remember I tried that (a long time ago), but right now I'm not sure if those Aliases were used or not in the widget. But even though that could be a slution, I still would like more control about them in the widget.
... View more
02-17-2020
10:59 PM
|
0
|
0
|
453
|
POST
|
Is it possible then to use a MBTILES in the latest version of the ArcGIS Runtime for .NET? The documentation doesn't mention it: ArcGIS Runtime supports the following offline layers Tiled layer data stored in tile packages (.tpk or .tpkx). Vector tiled layer data stored in vector tile packages (.vtpk). Feature layer data stored in the following formats: ArcGIS features held in a mobile geodatabases (.geodatabase). Features stored in a GeoPackages provisioned by the OGC file format (.gpkg). Features stored in the Shapefile format provided by the .shp file and its associated files (.dbf, .shx, etc). Raster layer data stored in a raster dataset file or in a GeoPackage (.gpkg). Could you share any code sample to show how to use a MBTILES file with the ArcGIS Runtime, please? Thanks!
... View more
01-20-2020
11:33 PM
|
0
|
0
|
787
|
POST
|
The problem was the tablet I was using to debug the application (Android 4.4) I have tested the map loading with an Android 8.1 device and it is working. Thanks!
... View more
12-04-2019
11:19 PM
|
0
|
0
|
2496
|
POST
|
Thanks for your help! I already tried that. The class doesn't have much else, except a couple of buttons. I will try compiling the code with a newer Android version.
... View more
12-03-2019
08:31 AM
|
0
|
0
|
2496
|
POST
|
This is the error I get with the steps you have described: javax.net.ssl.SSLException: SSL handshake aborted:
ssl=0x66396aa8: I/O error during system call, Connection reset by peer I don't understand what it means...
... View more
12-03-2019
07:09 AM
|
0
|
2
|
2496
|
POST
|
Thanks for your answer! My AndroidManifest already has that permission and the map I'm trying to use is 100% public. It worked OK with the 10.2.8 SDK (yes, I'm facing a huge leap forward in SDK versions). I'm not sure about using the Portal API. The map is stored in ArcGIS Online (I guess it could be the same). The following implementaion would be correct for my map? https://www.arcgis.com/home/webmap/viewer.html?webmap=65087932bac7461892b0d31f563a8c4d Portal portal = new Portal("http://www.arcgis.com");
PortalItem mapPortalItem = new PortalItem(portal, "65087932bac7461892b0d31f563a8c4d");
ArcGISMap map = new ArcGISMap(mapPortalItem);
Could the build configuration be related with my issue? android {
compileSdkVersion 19
buildToolsVersion '28.0.3'
defaultConfig {
minSdkVersion 19
targetSdkVersion 19
}
compileOptions {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
}
dependencies {
api project(':showcase')
implementation 'com.android.support:multidex:1.0.3'
implementation 'com.esri.arcgisruntime:arcgis-android:100.6.0'
}
... View more
12-03-2019
06:07 AM
|
0
|
1
|
2496
|
POST
|
Hi! I'm migrating an old android application to the Android SDK 100.6. I am having a lot of trouble to display a map. I always get a blank screen. All the examples I have found have the MapView in an Activity. In my application, the MapView is in a Fragment, but I don't think that is the issue. My XML: <com.esri.arcgisruntime.mapping.view.MapView
android:id="@+id/map"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</com.esri.arcgisruntime.mapping.view.MapView> My Fragment: public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
myFragmentView = inflater.inflate(R.layout.home_view_tab_my_statistics,
container, false);
mMapView = (MapView) myFragmentView.findViewById(R.id.map);
ArcGISMap map = new ArcGISMap("https://www.arcgis.com/home/webmap/viewer.html?webmap=65087932bac7461892b0d31f563a8c4d");
map.addLoadStatusChangedListener(new LoadStatusChangedListener() {
@Override
public void loadStatusChanged(LoadStatusChangedEvent loadStatusChangedEvent) {
String mapLoadStatus;
mapLoadStatus = loadStatusChangedEvent.getNewLoadStatus().name();
// map load status can be any of LOADING, FAILED_TO_LOAD, NOT_LOADED or LOADED
if (mapLoadStatus == "LOADED") {
mMapView.setViewpoint(new Viewpoint(Constants.MAP_DEFAULT_ENVELOPE_HOME));
}
}
});
mMapView.setMap(map);
return myFragmentView;
} The first mapLoadStatus is "LOADING", but the next one is always "FAILED_TO_LOAD". Instead of using a webmap URL, I have tried with a map I have found in the ESRI Documentation; but the result is the same. Basemap.Type basemapType = Basemap.Type.STREETS_VECTOR;
double latitude = 34.09042;
double longitude = -118.71511;
int levelOfDetail = 11;
ArcGISMap map = new ArcGISMap(basemapType, latitude, longitude, levelOfDetail); Does anyone know what I am doing wrong? I'm stuck with this error. Thanks for any help provided!
... View more
12-02-2019
08:39 AM
|
0
|
7
|
2844
|
POST
|
I'm migrating an Android application that used the ESRI SDK 10.2.8 into SDK 100.6. In order to add new features, the application needs to use a custom service whose main parameter is the Feature in JSON format. In the old version, the new element to insert was a Graphic and that object had the .toJson() method. In the new SDK the Grpahic object still exists, but it is not used for the same and the method to transform it into a JSON is gone. I have built an object Feature with the new element I want to add, but I have no idea how to convert that to JSON. What I have tried so far: ArcGISFeature f = objectToFeature(myObject);
try {
FeatureCollection fc = new FeatureCollection();
FeatureCollectionTable testTable = new FeatureCollectionTable(f.getFeatureTable().getFields(), GeometryType.UNKNOWN, SpatialReferences.getWgs84());
ListenableFuture future = testTable.addFeatureAsync(f);
future.get();
fc.getTables().add(testTable);
fc.loadAsync();
fc.toJson();
} catch (Exception ex) {
String c = "";
} I thought this was the way to go, but the "addFeatureAsync" is not working and throwing the error: com.esri.arcgisruntime.ArcGISRuntimeException: Abort due to constraint violation No idea which constraint it is talking about. Is there an easier way (or another way) to obtain the JSON of the new Feature I have created? Thanks for any help!!
... View more
11-25-2019
07:46 AM
|
0
|
0
|
513
|
POST
|
Thanks for your answer!! I made it work The migration to the new SDK is being more of a headache than I was expecting.
... View more
11-20-2019
06:01 AM
|
0
|
0
|
657
|
POST
|
I will answer myself: final ListenableFuture<FeatureQueryResult> future = Layer.SERVICE_COMMUNITY.queryFeaturesAsync(query, ServiceFeatureTable.QueryFeatureFields.LOAD_ALL);
// check if server result successful
FeatureQueryResult result = future.get();
// check there are some results
Iterator<Feature> resultIterator = result.iterator();
while (resultIterator.hasNext()) {
Feature feature = resultIterator.next();
communities.add(featureToCommunity(feature));
}
return communities;
... View more
11-19-2019
08:06 AM
|
0
|
0
|
657
|
POST
|
Hi. I need to migrate an Android application developed with the ESRI SDK 10.2.8 to the newest SDK: 100.6. My first big obstacle is migrating all the queries. Currently, they are done with the object QueryTask (which doesn't exist any longer). With it, I get the response from the server, I send the data with a return to the next step. Now, it seems that all queries are asynchronous, so the data that is returned is always empty. How can I get a synchronous behaviour with the new SDK? I'm totally stuck. ArrayList<Community> communities = new ArrayList<Community>();
QueryParameters query = new QueryParameters();
// WHERE
StringBuilder whereStrBuilder = new StringBuilder();
whereStrBuilder.append("display_order > 0");
query.setWhereClause(whereStrBuilder.toString());
// ORDER
OrderBy order = new OrderBy("display_order", SortOrder.ASCENDING);
query.getOrderByFields().add(order);
query.setReturnGeometry(false);
final ListenableFuture<FeatureQueryResult> future = Layer.SERVICE_COMMUNITY.queryFeaturesAsync(query, ServiceFeatureTable.QueryFeatureFields.LOAD_ALL);
future.addDoneListener(new Runnable() {
@Override
public void run() {
try {
// check if server result successful
FeatureQueryResult result = future.get();
// check there are some results
Iterator<Feature> resultIterator = result.iterator();
while (resultIterator.hasNext()) {
Feature feature = resultIterator.next();
communities.add(featureToCommunity(feature));
}
} catch (Exception e) {
}
}
});
return communities; communities is always empry, because it is returned before the addDoneListener is triggered. Is there a way of making the process wait until the query has finished so the proper list of communities is returned? Thanks for any help provided!
... View more
11-19-2019
07:01 AM
|
0
|
3
|
754
|
POST
|
Thanks! I got the wrong idea that that method only worked with QuerySpatialFilter.
... View more
11-05-2019
03:56 AM
|
0
|
0
|
2669
|
Title | Kudos | Posted |
---|---|---|
1 | 09-06-2019 01:47 AM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:25 AM
|