我们可以将Xamarin.iOS的CoreLocation API用于Xamarin.Forms吗?

时间:2018-03-16 17:17:57

标签: xamarin xamarin.forms xamarin.ios core-location

抱歉,如果这个问题令人困惑。因此,我正在从Swift切换到Xamarin(我很陌生),以便制作跨平台应用程序。所以我的应用程序使用 CoreLocation 框架来处理iBeacons和查找内容。我设法与Xamarin.iOS制作了类似的版本,就是这样。在这种情况下,我并不认为“ Xamarin让您有机会在不同平台上分享尽可能多的代码”。每当我创建跨平台(Xamarin.Forms)时,事情就会变得越来越麻烦。

我的 Xamarin.iOS 代码在此处以防万一:

...
using CoreLocation;
...
// Start scanning for beacons
            void StartScanningForBeacons()
            {
                #region
                //var Uuid = new NSUuid();
                //var BeaconRegion = new CLBeaconRegion(Uuid,BeaconId);    
                LocationManager.RequestWhenInUseAuthorization();

                #endregion

                // Start ranging beacons
                LocationManager.StartRangingBeacons(BeaconRegion);


                // DidRangeBeacons
                LocationManager.DidRangeBeacons += (object sender, CLRegionBeaconsRangedEventArgs e) =>
                {
                    // Push beacons' information onto screen
                    //Create Alert
                    var okAlertController = UIAlertController.Create("Title", "We found " + e.Beacons.Length + " beacon(s)\nmajor: " + e.Beacons[0].Major, UIAlertControllerStyle.Alert);

                    //Add Action
                    okAlertController.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Default, null));

                    // Present Alert
                    PresentViewController(okAlertController, true, null);
                    // DisplayBeaconsInformation(e.Beacons);
                };                
            }
...

所以,我的问题是,我们可以在Xamarin.Forms中实现特定的iOS框架,然后从我的Xamarin.iOS复制整个代码并期望它在Android和iOS平台上运行吗?

0 个答案:

没有答案