Appium\Appium Inspector - Unable to identify objects on certain page of IOS App - appium-ios

On first page of IOs App and other screens Appium and Appium inspector are working
On one of second page where there are lot of data elements and dynamic data I see issues with Appium unable to identify objects or elements of IOs App
a. Switching from WebView to Native app and vise versa in script using driver context
b. Trying with web, native, hybrid mode on Appium inspector
c. Setting up capability to get limited objects and some of issues others users has faced which are defined in user groups but no go ( It works fine with some of other apps we tried )
d. Tried launch or opening Appium inspector directly on second page
Following capabilities used, I don't blame capabilities or setup as its working fine with other pages and other apps perfectly
capabilities: {
{
"platformName": "iOS",
"appium:automationName": "XCUITest",
"appium:xcodeSigningId": "iPhone Developer",
"appium:udid": "xxxxxxxxxxxx",
"appium:deviceName": "xxxxxxxxxxxx",
"appium:xcodeOrgId": "xxxxxxxxx",
"appium:platformVersion": "15.5",
"appium:systemPort": 8201,
"appium.app": xxxx.xxxxx.xxxxxxx,
"appium:newCommandTimeout": 5000,
}
Thanks
pratap

Related

Rendering Autodesk forge viewer offline on mobile freezes on chrome browser on android

I have hosted my model offline file on a local server and I am connected to the same server everything is accessible to me via android phone.
I have create a sample project where the forge render offline model file which works smoothly on chrome browser of my laptop but on my Xamarin form webview and chrome browser the model render with lags as my model has too many details and nodes, I cannot even perform a simple zoom in zoom out functionality.
Now same thing when I am running on Ios(safari browser) this works smooth and without any issue.
I want to understand is they any such setting which effects chrome browser or native browser of android which loads model with lag
I have tried all the possible solutions available on google
1.I have implemented this in xamarin forms custom webview renderer and gave all the required resource that I can
here are the few settings
var mWebView = new global::Android.Webkit.WebView(MainActivity.Main.ApplicationContext);
WebSettings settings = mWebView.Settings;
settings.JavaScriptEnabled = true;
settings.LoadWithOverviewMode = true;
settings.UseWideViewPort = true;
settings.SupportZoom();
settings.BuiltInZoomControls = false;
settings.SetLayoutAlgorithm(WebSettings.LayoutAlgorithm.SingleColumn);
settings.CacheMode = CacheModes.CacheElseNetwork;
settings.DomStorageEnabled = true;
mWebView.ScrollBarStyle = ScrollbarStyles.OutsideOverlay;
mWebView.ScrollbarFadingEnabled = true;
mWebView.SetLayerType(LayerType.Hardware, null);
SetNativeControl(mWebView);
2.Added hardware acceleration in manifest also added heap flag to true in manifest
3.followed this too for autodesk memory limit {https://forge.autodesk.com/en/docs/viewer/v7/developers_guide/viewer_basics/memory-limit/}
4.I tested above solution with firefox and it works smoothly I am not sure what different they are doing to render this files
can any one help me what should I try to solve this issue
My device is medium end with 8gb Ram and 128gb internal space I am testing on 2 devices (samsung m40 and one plus 7t)
Me to same Issue I am Unable To move Model in Android device. I am using the both online and offline Viewers.
I am Using Xamarin Forms Custom WebView Renderer as like Question
Autodesk team reply to us and Petr Broz solution plz
I'm afraid this (running a web application inside a Xamarin WebView) is beyond our area of expertise but I would suggest the following:
try running a vanilla three.js application inside the WebView, with a reasonably complex scene as well (for example, convert one of your Forge models into glTF using https://github.com/petrbroz/forge-convert-utils, and load the glTF)
if the three.js application has similar performance issues, it's most likely an issue on the Xamarin side, and something we won't be able to help with
if the three.js application is working fine, please send us (forge (dot) help (at) autodesk (dot) com) a basic Xamarin project with both Forge Viewer and with Three.js that can demonstrate the performance differences, and we would try and allocate some time for debugging it, and see if there's anything we can do to help

Camera flash always ON - Xamarin Forms

I am working on a cross platform application that needs to keep the flashlight always ON while the camera is operated. Is there any particular way to do it?
I tried using the CrossLamp.Current.TurnOn(); but it throws error as the two plugins are not working together.

Appium iOS 11 RemoteViewBridge - access default app sdk like Photo, Email

App has access to import image from photo and other option is sending doc via email. In automation I could access photo and email options once my app loads the ui on init. This was working in iOS 10 and Xcode 8. Now, Upon upgrade the Xcode to 9 and iOS 11 the same app is not allowing me to access the element in Photo and Email. When I checked the element in Inspector, it shows me the entire Photo/Email page is RemoteViewBridge. Could you help me on this, how to fix this issue?
UIImagePickerController class has a private view hierarchy. The collection view cannot be accessed anymore from appium. In ios 11 you cannot access these elements. Try using iOS 10.3 or wait for the fix. I am accessing using coordinates in my project for the time being.

sapui5 application is not open inside portal iView in IE11 default browser mode 5

I created an application using sapui5.I am using sapui5 library 1.40 in server NW7.4 sp6. This application working fine in chrome.
If I open this application in new Tab of IE11. It's working fine but when I am trying to call inside Portal iView. sapui5 library is not loaded, due to this my application is giving error "sap is undefined".
Please find attached document of screenshots for the reference. I have attached console log of the browser as well.
Thanks in advance
The Portal isn't able to run SAPUI5 iView that don't run with the standards mode. SAP provides a lot of documentation through SAP note and SDN blogs about that but the one that could help you the most might be the following:
https://blogs.sap.com/2014/09/03/ie-and-portal-standardsquirks-mode-evolution-or-love-hate-relationships/
To sum it up, your SAPUI5 iView must run with NavMode 10 ("Standard headerless framework page"), this should enable edge document mode, be careful that the entreprise mode for IE11 is not activated otherwise edge mode won't be usable.
Hope this will help you.

How do you see logging from a Meteor Cordova iOS app?

From what I understand, doing a console.log in a normal Cordova app gets piped to the Xcode debug output, but that doesn't work for my Meteor Cordova iOS app, so I've been doing alerts, which isn't as good.
#Ethaan's answer is a good point, but I don't think it is answering the OP's intended question. I am going to re-iterate the comment from #user728291 on the Question since I believe it is the sought answer.
Safari Remote Debugging will show you console.log messages from
Xcode's simulator or a connected device.
And in the case that the hyper-link may someday be moot, I will re-iterate the referenced text from the link:
If you are doing iOS PhoneGap debugging and have the Safari Develop Menu enabled, you can access the currently active session through the built-in Safari Web Inspector. To activate, go to Develop -> (iPad || iPhone) Simulator (normally, the third menu item) and click the active session you want to connect to. Voila!
The same way you can use Meteor.isServer and Meteor.isClient booleans
to separate your client-side code and server-side code, you can use
Meteor.isCordova constant to separate your Cordova/Phonegap-specific
code from the rest of code shipped to browsers and mobile devices.
From Meteor Cordova Phonegap Integration Documentation
So try with this.
if (Meteor.isCordova) {
console.log('Hi iam on the console from Xcode")
console.log("Welcome back " + Meteor.user().username);
console.log("the user with the id " + Meteor.userId() + " Just logged In");
}

Resources