Android entertainment system software architecture based on Android system

Abstract: The automotive electronics industry is currently facing many opportunities and challenges. Developing a universal platform that all cars can install can not only reduce the cost of the entire industry chain, but also increase the application software to meet different user preferences. This paper proposes a feasible software architecture to apply the good compatibility and security features of Google Android system to the in-vehicle electronic system.
Keywords: car electronics; open source; software architecture

Introduction The automotive electronics industry has huge market potential as car owners expect some of the applications they use on their phones to run directly on their private cars. But at the same time, it also faces many challenges. In-vehicle electronics manufacturers need to meet the requirements of different car models, and even different models of the same brand often need different customization. Today's car owners want to be able to install or remove applications as they would with a smartphone. To port the software used on the phone to the in-vehicle electronic system, developers must face the daunt of having to run a third-party application in an isolated environment to prevent interference with other in-vehicle functional modules. And threats that may cause the owner to leak information. At the same time, third-party applications must be effectively integrated with other in-vehicle systems to provide a more user-friendly experience for users. Finally, third-party software developers must develop a common platform for the common features of in-vehicle systems to facilitate porting by different car manufacturers, and to enable the same application to be seamlessly used on different brands of cars.
This article is an innovative extension to Google's Android system application, which isolates third-party applications and gives trusted third-party applications access to the automotive functional software layer, enhancing security against car security.

1 Background People intuitively feel that the consumer electronics inside the car seems to provide functions similar to those of smart phones, PDAs, and MP3s, but because they are inevitably in contact with other functional modules of the car, the car entertainment electronics consumes more than others. Electronics are more complicated. Under normal circumstances, most of the application software on the car is solidified by the manufacturer at the time of automobile production. They are generally scrapped with the scrapping of the car, so the life cycle is generally 5 to 10 times that of the mobile phone or MP3. This requires in-vehicle electronics design companies to support long-term upgrades to their factory-installed applications. However, due to the rapid replacement of electronic products, software upgrades alone have greatly increased costs.
Last year, the GENIVI Alliance held a conference with a number of auto giants, chip design giants, and software development companies to discuss how to establish a standard open development platform for in-vehicle electronic products. GENIVI proposes to develop a scalable architecture that may be applied to the next generation of automotive electronics. It needs to work in the following areas:
1 By adding seamless software patches and plug-ins from the open source community and professional software development alliances, it is possible to add more content and features, and always consider the security and reliability of the system.
2 Increase the personal enjoyment of the owners and passengers, and try to make it more cost-effective, and strive to reduce equipment costs.
GENIVI's software architecture leverages Intel's Moblin platform as a framework to meet specific automotive needs and usage by adding or removing components. Support for user-defined installation applications is being discussed, and many of the platforms available for negotiation are under negotiation, and Google's Android system is one of them.
It should be emphasized that the automotive electronic hardware devices (network-specific devices on the CAN bus) currently supported by GENIVI and Moblin are currently not implemented on Android. However, due to Android's strong support for open source, allowing users to install and uninstall terminal programs, Moblin has not yet licensed these features.

2 Google Android
At the end of 2007, at the Open Handset Alliance Conference hosted by Google, a completely free and open mobile phone platform was born, with the goal of extending to a wider range of hardware devices. The basic feature of Google Android is its openness. Free SDK source developers can easily download it. Google's appeal and Android's open source quickly prompted the formation of the developer community.
Android is a development platform primarily for mobile devices that includes a system kernel, middle-tier and underlying drivers, and some bundled applications. The entire project is licensed under the Apache License Version 2, so mobile operators, software companies, and any developer can add or remove features. According to the 2.0 sample protocol, sharing applications is possible even if it is not a content provider. The platform allows some secondary developers to add new features or applications to their needs, so it's easy to develop rich end-to-end applications.
2.1 Structure Overview The Android system architecture consists of five parts: Linux kernel, library functions, Android running state, application framework, and application.
At the bottom of the linear architecture is the Linux kernel, which is basically the Linux 2.6.27 version. The Linux kernel is used to update patches for Android. The kernel is responsible for managing system service programs and driver modules, memory management, and task scheduling. The root file system uses rootfs, while the data and files use YAFFS, which is a file system designed specifically for NAND and NOR memory.
The application framework and Android runtime tense mainly through the C/C++ library, which includes standard C libraries, multimedia libraries, graphical interface libraries, browsers, font libraries, and databases.
The Android running state includes the core library and the Java Dalvik virtual machine. Dalvik is a virtual machine that allows multiple processes to run on a limited amount of memory. Each program runs in a separate Linux process.
The application framework consists of many classes, interfaces, and packages. Its purpose is to provide a simple, continuous way to manage graphical user interfaces, access resource memory, receive notifications, or handle incoming calls. The main components are visual system, activity class management, sharing management, resource management, Notification management, telephone management.
2.2 Security Android internal process communication and security mainly refers to the stability of the system as much as possible when installing third-party applications. The underlying licensing mechanism is provided by the Linux kernel and file system, and basically satisfies other systems based on the Linux kernel. Since the Android device is for a single user, the multi-user service device can be applied by assigning a unique identifier.
In addition, Android is a static security licensing system that is enforced when the program is installed.
2.3 Communication between processes Android has two models of interprocess communication: intent and code binding. The intent class framework provides upper-level interprocess communication, which is the best way to dynamically exploit the SDK package for development and bind to the upper application. The intent class contains several fields that describe the caller's true intent. The caller sends the intent to the Android intent parser. The And-roid system will select the most suitable activity for the intent from all the applications through the intent filter. class. The intent field contains the expected processing methods, classes, and data characters, MIME types of the data.
The intent can be used to trigger activities, send data to the broadcast and start the corresponding service. Security restrictions are mainly achieved through the permission framework class provided by the Android system.
Each program runs in its own process, but the developer can write a service to run in a different process, and some objects are allowed to pass between processes. On the Android platform, a process usually cannot access other process memory. Therefore, if two processes communicate with each other, they need to decompose their objects into basic types that the operating system can recognize, and control the objects through the boundaries of the process. The AIDL tool with SDK automatically generates control code segments, and AIDL is an interface description language used to generate communication code between two processes. The AIDL IPC mechanism uses a proxy class to pass parameters on both the client and the implementation side.

3 Android application in a car electronic architecture Android expands the overall structure of the car, the basic architecture shown in Figure 1, the custom Android platform is applied to the side of the car function module and support components. The purpose of this extension is to provide a security mechanism that allows trusted applications to access automotive function modules (vehicle braking, steering, or electric drive distribution) that are not trusted and are not accessible. This mandatory security policy between applications is an IVI system that derives from reliability requirements. Trusted applications through car management have the opportunity to access some features (CAN bus), but improper handling can also jeopardize vehicle safety (eg, by continuously transmitting invalid data frames to saturate the CAN bus bandwidth). The main feature of this scheme is to decouple the upper logic, so that the upper application can easily acquire and process the underlying data.

This article refers to the address: http://

A.jpg


3.1 Car Management Module As can be seen from the above figure, the car management module can be regarded as an intermediate class library responsible for the interaction between the in-vehicle application and the underlying Android. Only through this, the in-vehicle application can obtain the corresponding underlying data.
It has two interfaces: one for the application and one for the platform. It is an application developed on the Android SDK and with platform certification. Because this management class is not part of the platform itself, users cannot update themselves without the help of a professional.
3.2 Interaction with Applications Android is a communication model based on opaque IPC. The application passes its functionality to the operating system, and at runtime, other applications can get their functionality. Basically, the platform provides the ability to manage and maintain code later, and this model can also be used to interact between third-party applications and car management classes.
Car management class handles car function modules via properties android. Permission. Car. Speed. Read and android. Permission. Car. Speed. Write. For each property (such as the car bus sending real-time speed), Android provides two permissions, created and assigned to the management class.
With a predefined level of security, it can specify different security levels with the following permissions:
1 all. Anyone can access the app 2 normally. Access is determined by permissions, but some application permissions do not specify the permissions; after the program is installed, permissions are manually set.
3 danger. When access is restricted, the user must have an exhaustive security license when installing.
4 signature. Access is restricted, and as long as the application is certified by the platform, the permissions are automatically agreed.
Platform certification is the signing platform used by car designers in the development and design process. It is also used to sign car management classes. If a third party applies for this certificate, it has full control over the car extension (in fact, the car management class is just an application that signs the application platform certificate). The car functions defined by the following attributes can be accessed through the high-level AIDL interface:
B.jpg
This way of reading/writing allows access to the value of an attribute via input/output. By adding or removing a listener method to allow registration or cancellation of the relevant callback function, the attribute value of the notification can be changed. The car management class inherits this interface. The personal phone is verified by the Android privilege related attribute. If the caller is allowed to execute, the car management process will automatically process it, otherwise an exception will be thrown.
When developing an application, developers need to know their property names and the type of data to be able to develop third-party applications. And all interactions occur on the previous AIDL interface. This means that, thanks to the architecture of the Android system, developers do not need to know the entire SDK, but only know the phone attributes defined by the AIDL file and the callback function described by the AIDL file. Moreover, if different IVIs come from different manufacturers but have the same attribute functionality, third-party applications can use such attributes to run seamlessly on IVI.
In order to verify the practicability of the above architecture, a working module that implements full functionality has been developed, consisting of a proof of concept for a custom Android distribution. The module has been tested with the Andr-oid simulator, based on the ARM processor, the typical features of the custom mode and the user interface on the IVI, and runs on a netbook with an Intel Atom processor.

Conclusion This article outlines the relevant knowledge of in-vehicle electronic systems, and introduces the background knowledge of Google Android system; designs an in-vehicle electronic scalable platform based on Android architecture to meet the needs of personalized car development. The next step is to boot the system on custom hardware and get real-time car data.

Heat film on Agriculture applications including : greenhouse seedling breeding Heating film, agricultural vegetable greenhouses heating film,,Seedling Heat Mat,Flowerpot heat mat etc.The application of heating film in animal husbandry, such as: hatching fowl heating film,far infrared sterilization heating film,etc.we are a professional and leader Chinese exporter of heat film,Customization options (for example: SMT components, flex cable and connectors) can provide the perfect complete solution that can significantly reduce assembly time and increase productivity.Providing a variety of complex shapes design, and different power designs. Membrane in the same piece electrically heated heating circuit can be designed and holding circuit,we are looking forward to your cooperation.

Seedling Heat Mat

Seedling Heat Mat,Plant Starter Heat Mat,Plant Seed Heat Mat,Seed Heating Pad

ShenZhen XingHongChang Electric CO., LTD. , https://www.xhc-heater.com