In Android 8.0 and newer you can have a light navigation bar. In Android Studio you set the UI flag SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR with the method setSystemUiVisibility(int). Is this feature existing in Xamarin.Android?
Screenshot from Gmail app on Android 8.1.
You should be able to do this in your activity:
Window.DecorView.SystemUiVisibility = (StatusBarVisibility)SystemUiFlags.LightNavigationBar;
... and also ensure that your target framework is set to 8.0 (Oreo)
Related
I am trying to use "speech-to-text" functionality in xamarin ios. But I am getting following error after adding "Using Speech;" in my class file.
Your application is using the 'Speech' framework, which isn't included in the iOS SDK you're using to build your app (this framework was introduced in iOS 10.0.0, while you're building with the iOS 10.0 SDK.) This configuration is only supported with the legacy registrar (pass --registrar:legacy as an additional mtouch argument in your project's iOS Build option to select). Alternatively select a newer SDK in your app's iOS Build options.
How I can use "Speech" in xamarin ios app?
Check your Xcode version first. Whether is the latest version.
Check also iOS project Options->iOS Build->SDK Version, whether is using correct SDK version. For mine, it is set to Default which is 10.3 now.
When I retrieve SfBApplication.sharedApplication in viewdidload of my iPhone app's main view controller, I get nil/null but no errors or log info.
What could be causing this?
Specifically I would like to know if the SDK code contains cases when it returns nil here but does not raise an error.
Context: I am using the SDK in the iPhone simulator, and I am accessing the simulator version of the SDK framework from Xamarin - I have created Xamarin iOS bindings for the native framework. I have already seen the SDK working in the iPhone simulator in an Objective-C App.
Solved it myself: this was a problem with the build tools for Xamarin iOS binding projects in Visual Studio.
When I built the same Xamarin iOS Bindings project in Xamarin Studio on the Mac, the SfB App SDK worked - including video calling in the iPhone Simulator.
Lesson learned: create iOS binding projects in Xamarin Studio, on the Mac.
I'm trying to build my Xamarin Forms app for the Apple store using Xamarin Studio on my MacBook. This worked fine until recently.
The only options available to me on the SDK version dropdown on the iOS Build tab are Default and 8.3. If I build using either of these and try to upload to the store I get the following error:
ERROR ITMS-90068: "This bundle is invalid. The value provided for the
key MinimumOSVersion '8.3' is not acceptable."
I guess this is due to updating all Xamarin and Xcode components to their latest versions recently.
I'm trying to figure out how to get the 8.2 SDK back.
I tried downloading the iOS 8.2 Simulator from Xcode > Preferences > Downloads but that doesn't seem to have added anything in the Xamarin SDK version dropdown.
Any ideas?
You're confusing the SDK version used to build your app with and the minimum iOS version your app requires.
It's perfectly possible to build an app using the iOS 8.3 SDK and target iOS 5.1.1 for instance.
You need to set the minimum iOS version for your app instead of changing the SDK version; this is done in the project's iOS Application options, by setting Deployment Target to your app's minimum iOS version.
This is what I did to resolve the issue:
Right click on the .iOS project > Options
Set Build > iOS Build > Link behaviour to Link Framework SDKs Only.
My app currently has a Base SDK of 6.1
Ive put iPhoneOS6.1.sdk into:
Xcode> Developer> Platforms> iPhoneOS.platform> Developer> SDKs>
And it allows me to build with the base SDK set to iOS6.1
But unless if I have the Base SDK set to 8.0, it doesnt show me any of the simulators running iOS 7.0, 7.1 or 8.0
Does anyone have a way of getting it to show me all the simulators even though my Base SDK is 6.1?
In Xcode 6.1 you can add simulators manually. To do so go to Window -> Devices and press the + symbol left at the bottom.
Then you can choose a combination of device type and iOS version to create.
Go to Windows -> Devices and press the plus in the bottom corner and add the simulators that you wish.
Download the other available iOS simulators (7.1 , 7.0 and 6). Worked for me
Do not copy the older SDKs into newer Xcode. That is unsupported and very likely to lead to problems.
You should be using the latest SDK and setting the deployment target to the oldest OS you want to support. I believe most developers right now are using the 8.1 SDK (or just set it to latest) with a deployment target of either 6.1 or 7.1.
My app has historically supported iOS 5 & up. We just recently decided to drop support for iOS 5. I removed support from the app by doing the following:
Clicking on the project's target
Searching for iOS Deployment Target in Build Settings
Setting that value to iOS 6.0
However, when I look at the list of possible simulators from the scheme dropdown, I'm still able to choose iOS 5.0 and iOS 5.1.
I'm worried this means I may have not actually set the minimum supported version of my app to 6.0. My app will crash on anything pre-iOS 6, since we've begun to use Auto Layout for some new views. Any new projects only show the latest simulators as scheme targets.
What am I missing? How do I get this dropdown to stop showing me the iOS 5.0 and 5.1 simulator options?
You are not missing anything. Setting the Deployment Target will determine the minimum version required for installation of the app.
I don't know of any way to hide an irrelevant target from the scheme dropdown.