private async Task Initialize() { // Handle the login to the feature service. AuthenticationManager.Current.ChallengeHandler = new ChallengeHandler(async(info) => { try { // WARNING: Never hardcode login information in a production application. This is done solely for the sake of the sample. string sampleServer7User = "******"; string sampleServer7Pass = "******"; return(await AuthenticationManager.Current.GenerateCredentialAsync(info.ServiceUri, sampleServer7User, sampleServer7Pass)); } catch (Exception ex) { Debug.WriteLine(ex.Message); return(null); } }); try { // Create a map. MyMapView.Map = new Map(BasemapStyle.ArcGISStreets); // Populate the combo boxes. AccessBox.ItemsSource = new List <VersionAccess> { VersionAccess.Public, VersionAccess.Protected, VersionAccess.Private }; DamageBox.ItemsSource = new List <string> { "Destroyed", "Inaccessible", "Major", "Minor", "Affected" }; // Create and load a service geodatabase. _serviceGeodatabase = new ServiceGeodatabase(new Uri("https://sampleserver7.arcgisonline.com/server/rest/services/DamageAssessment/FeatureServer/0")); await _serviceGeodatabase.LoadAsync(); // When the service geodatabase has loaded get the default version name. CurrentVersionLabel.Content = $"Current version: {_serviceGeodatabase.DefaultVersionName}"; // Get the service feature table from the service geodatabase. _featureTable = _serviceGeodatabase.GetTable(0); // Create a feature layer from the service feature table and add it to the map. _featureLayer = new FeatureLayer(_featureTable); MyMapView.Map.OperationalLayers.Add(_featureLayer); await _featureLayer.LoadAsync(); // When the feature layer has loaded set the viewpoint and update the UI. await MyMapView.SetViewpointAsync(new Viewpoint(_featureLayer.FullExtent)); // Enable the UI. CreateVersionButton.IsEnabled = true; MyMapView.GeoViewTapped += MyMapView_GeoViewTapped; } catch (Exception ex) { ShowAlert(ex.Message, ex.GetType().Name); } }
private async Task Initialize() { // Handle the login to the feature service. AuthenticationManager.Current.ChallengeHandler = new ChallengeHandler(async(info) => { try { // WARNING: Never hardcode login information in a production application. This is done solely for the sake of the sample. string sampleServer7User = "******"; string sampleServer7Pass = "******"; return(await AuthenticationManager.Current.GenerateCredentialAsync(info.ServiceUri, sampleServer7User, sampleServer7Pass)); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return(null); } }); try { // Create a map. _myMapView.Map = new Map(BasemapStyle.ArcGISStreets); _damageSpinner.Adapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerItem, _damageLevels); _protectionSpinner.Adapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerItem, _accessLevels.Select(l => Enum.GetName(typeof(VersionAccess), l)).ToList()); // Create and load a service geodatabase. _serviceGeodatabase = new ServiceGeodatabase(new Uri("https://sampleserver7.arcgisonline.com/server/rest/services/DamageAssessment/FeatureServer/0")); await _serviceGeodatabase.LoadAsync(); // When the service geodatabase has loaded get the default version name. _versionLabel.Text = $"Current version: {_serviceGeodatabase.DefaultVersionName}"; // Get the service feature table from the service geodatabase. _featureTable = _serviceGeodatabase.GetTable(0); // Create a feature layer from the service feature table and add it to the map. _featureLayer = new FeatureLayer(_featureTable); _myMapView.Map.OperationalLayers.Add(_featureLayer); await _featureLayer.LoadAsync(); // When the feature layer has loaded set the viewpoint and update the UI. await _myMapView.SetViewpointAsync(new Viewpoint(_featureLayer.FullExtent)); // Enable the UI. _versionButton.Enabled = true; _myMapView.GeoViewTapped += MapView_GeoViewTapped; } catch (Exception ex) { ShowAlert(ex.Message, ex.GetType().Name); } }