Automated testing in Android Automotive - android

What are the best frameworks or tools for automated testing in Android Automotive?
I read about Spectatio but I couldn't find code examples or anything other than what's mentioned on the Android page.

If you look into CATBox documentation, it's based on Spectatio framework. You can build and run catbox from AOSP by following Build CATBox documentation.
BTW, Are you looking for testing framework for your unbundled applications? (which means app will be installed to Android Automotive through Play or else) or, your Android Automotive builds with preinstalled apps?

For automotive you can just use
CATbox
Spectatio - built on top of UIAutomator

Related

Can you publish an app made with Android Studio to iOS platforms?

Can you publish an app made with android studio to iOS platforms? Is there a compiler that lets you compile your Android Studio app to and iOS platform working app?
It is not practical to run Android apps on iOS or the other way round.
Each operating system of each platform has different native components. The native Android or iOS app development requires using different programming languages, design interface, navigation, integration process.
The Android system uses the instruction set of the Java virtual machine called ByteCode. iOS, on the other hand, implements the compiled code.
Running Android apps on iOS is not possible because of the following factors:
Different lifecycle of apps in the system.
Different lifecycle of app screens within the app itself.
Different approaches regarding data access.
It is misleading to be told to use some kind of service or program to transfer your app to another platform with just a few clicks. Online tools like an Android to iOS converter do not work.
The only exception is the case if your app has been developed cross-platform from the beginning. There are some web-based libraries and frameworks which can help you develop hybrid apps. You can also have a look at flutter & xamarin but the app must be all done in that framework.
As far as I know, there is no something that can do that. Android is very different from IOS. If you want, there are a lot of tools that you can develop with them apps for both Android and IOS, with one codebase.
Some of these tools:
React Native
Flutter
Xamarin
PhoneGap
Apache Cordova
But if you will use one of these tools, instead of Android Studio for Android and XCode - It will not have the same performance as if it was written with Android Studio and XCode.
The reason for that is because the platform-specific tool (Android Studio / XCode) can talk directly with the Operating System, while the cross-platform tool (React Native / Fultter etc.), cannot talk directly with the Operating System.
Hope I helped you!
You can do this with Flutter.
https://flutter.dev/
They are different from writing standard android apps, and use Dart rather than Kotlin/Java.
It does have a good tight integration with Android Studio however.

How to build my react native app with TeamCity?

I start using Team City and my app builds with react native version 0.60.5...
I was wondering what will be the best and the easier way to build my app for iOS and android.
For iOS I was thinking using the Xcode plug.
For android I'm thinking to use Docker but its complicated and taking time to develop..
Does someone has any recommendation what to use for building my android app or Docker is a good solution?
And about the iOS, are you recommend use the Xcode plug or any other idea?
Thank you for the help
You can easily use TeamCity to automatize your build for Android, check the official documentation for more information:
You just need to be careful specifying the requirements for build your project for React Native, like:
version of react native, version of expo-cli, version of node that you are using in your project and etc...
For IOS, i recommend using fastlane, check this official tutorial from Apple.
Don't forget that you need to have an developer account for build to ios in React-Native.

Can I build Android apps with react native?

The recently launched react native features just iOS app example and docs.
Yes.
React Native for Android was released September 14th, 2015.
Docs: http://facebook.github.io/react-native/
No. You can't build Android apps with this release.
Facebook has indicated that they are working on an Android version, and famously said "give us 6 months", which some people have taken as a promise. I wouldn't base any important business decisions on the illusion that it will be unveiled when the 6 months is over, but you can at least take some hope in the fact that they're serious about making it production-ready before they give us access to it, and that it's not just a pie-in-the-sky hope.
Also, as others have pointed out, Facebook has already release apps that they've built with the Android version of React Native. So at least parts of it are ready for prime time.
UPDATE
Early support for React Native for Android has been pushed to GitHub!
As noted, there are several things that are currently not working if trying to port an application from iOS. But it's worth checking out.
https://github.com/facebook/react-native/commit/42eb5464fd8a65ed84b799de5d4dc225349449be
It is not aiming to be a cross platform, write-once run-anywhere, tool. It is aiming to be learn-once write-anywhere. -Colin Eberhardt, from Raywenderlich
Good news is that React Native for Android is finally here. (https://code.facebook.com/posts/1189117404435352)
while you can't do it right now, it shouldn't take that long.
The first React Native Android App has been published about two weeks ago in the play store as tweeted by the reactjs twitter account:
https://twitter.com/reactjs/status/615638361328349185
Great news! Now its possible!
"And so it happens, the commit we're waiting since about 6 months!" - usereact.com
Please read more on: http://www.reactnative.com/react-native-for-android/
Watch this video: https://www.youtube.com/watch?v=MNNR01NF290
I've tried out Facebook react native on Android and it really worked.
Simple Ubuntu install guide can be found here
Simple js files: link
Yes , We can now developed android apps too in react-native.
and some of the apps are already developed in react-native for android
suchs as:
1)F8
2)Facebook ads manager
3)Squad
4)Discovery VR
5)Ziliun etc..
and many more still counting.
Developers from around the world now opting react-native for mobile app development because of easy of use of JSX syntax.
and also it is commonly noted as simply the V in MVC.
Since React makes no assumptions about the rest of your technology stack, it's easily embeddable within an existing non-React Native app.
TLDR; Yes,
Detailed answer (As of November 2017)
React Native android application development is very stable and a good number of Android applications have been already built and used in production using React-Native.
You can find a showcase of applications here. Most of them have both IOS and Android versions.
You can also easily integrate your native Android java code to react-native. Refer here
As a developer who is building Android app using react-native with a lot of native java code dependencies, react-native runs stable and I found the documentation and community support is adequate.
Yes, it works for both the platforms ios and android, be sure to mention code entry points in app.js if it uses different code for different platforms. However native functions like native events or location manager need to be coded in native languages and then exported using RCT_EXPORT, you can find more about it in the docs
Sure,
Using React Native you can build real mobile app. real app means close to platform or simply can say 99% native app.react native provide easy way for building native android app using javascript for lucrative design.You have basic knowledge of android studio and error fixing in android studio related native module integration and good understanding of react.js then you can build android app using react native.
Basic Requirement for android app
1. Configure android studio please follow below link and avoid installation of python.
https://facebook.github.io/react-native/docs/getting-started .
2. for UI you will learn flex-box from official documentation.
I thing that is enough
Yes, not just with android but also with iOS using XCode
Yes, you can make real-world mob application with React-Native. React-Native is used to create a hybrid mobile application. In this, we write code in javascript which gets converted to swift for ios and java for android.
Yes, You can build the Android app using React Native. For this, you have to install Android Studio with all the required SDKs. You can run your React Native app in Android simulator by using Android Studio and command line both.
For command line, run the following command:
react-native run-android
Otherwise you can open the android project in Android Studio which is created by React Native in android folder and run the project from there.
Happy Coding.. :)
Yes, you can definitely build android apps using react-native.This is one of the great benefits of React Native. Before Facebook created it, you had to build your app twice and with different code : one for iOS using Swift or Objective-C and one for Android using Java or Kotlin.

GUI test for native android and iOS applications

I have a native android and a native iOS application and want to test them both with one tool.
Is there a tool which makes it possible to record/write a GUI test once and use it then for both platforms?
The only tool I found was MonkeyTalk but arenĀ“t there more tools out there?
You can use Robotium.
Download the tool from this location: http://code.google.com/p/scirocco/wiki/QuickStartScirocco
Scirocco (the tool referred in the above link) is just an Add-On to the Robotium. It means Scirocco enables you to capture images. Almost same as Monkey Runner.
Checkout a simple example at this location:
http://testdroid.com/tech/54/automated-ui-testing-android-applications-robotium
Hope this helps!

Port .NET dll to different platforms

I have a dll based on .NET 2.0 with full source code access.
So I can build it in VS2010.
I need to port this to Android/iOS/MacOS.
As a result I expect some equivalent of dll for each platform.
So another programmer can link (doesn't matter how) this equivalent to his own project at one of that targeted platform.
For example I ran MonoDevelop on Mac and don't see how I can build my .NET project and to receive such equivalent of dll.
So I need help to find solution and understand what to do to receive requierd result.
There are CLI implementations, primarily Mono, that work on both iOS and droid. The simplest tools here are MonoTouch and Mono for Android, both available from Xamarin. With these tools, you can build and test your dll targetting the relevant frameworks. Another programmer, again using the MonoTouch or Mono for Android tools, can reference those dlls, and build their application, with all the tools necessary to package and deploy (side-loading or via, say, the device's store) an application using that library. This deployment will typically also include all the runtime/framework pieces needed by the application.
MonoTouch makes use of the MonoDevelop IDE, so will be familiar to you as a MonoDevelop user. Mono for Android can do that (i.e. be hosted inside MonoDevelop), but can also be used inside Visual Studio.
Running .NET code requires a .NET runtime to be installed. Neither Android nor iOS devices come with such a runtime preinstalled.
In theory, you could install the Mono Runtime (a open-source .NET alternative) on an Android device or a jailbroken iPhone/iPad. However, as I understand it, you're looking for a way to create a library to give developers, so this isn't a good solution.
However, what could work is creating a library with MonoTouch. MonoTouch compiles your .NET code to a binary that iOS devices can use - regardless if they're jailbroken or not, without needing a runtime installed.
If you follow best practices, you might port your library successfully, such as
http://sharpsnmplib.codeplex.com/discussions/390251
However, it purely depends on the characteristics of your library, which you does not mention yet.

Categories

Resources