Information Service System for Internet of Vehicles

. This system is an Android mobile phone information service system for internet of vehicles. The information service system has four types of functions, including a login registration function, an information search function, a location function, and an information query function. The connection between cars and cars is gradually evolving into Internet of Vehicles from the traditional vehicle self-organizing network. The need for real-time service information for vehicles has also followed. Therefore, the research mainly designed an information service system for users of vehicles.


Introduction
With the development of the new era of the Internet of Things, more and more cars are gradually evolving into a car network from the traditional vehicle self-organizing network, and the demand for real-time information services for vehicles has also followed, so the development of a vehicle-oriented user Android mobile phone information service system is very necessary. The ideal goal of the Internet of Vehicles is to achieve a deep integration of people, vehicles, goods and environment, reduce social costs, improve traffic efficiency, and improve urban service levels. The Internet of Vehicles also includes vehicle telematics, a service for electronic data exchange with connected vehicles for remote diagnostics and location-based provisioning, on-demand navigation and audio-visual entertainment. The focus of the car network is the integration of people and vehicles, the car is an extension of human capabilities, and people are the expansion of vehicle intelligence [1].

Related technologies
Android is a software platform and operating system based on Linux kernel, which has several outstanding advantages. Android is a development platform and a completely free smartphone platform. The system is developed by Google, and has a complete range of search, weather forecast, Google Talk, map, Gmail, etc. Application has the unparalleled advantages of other systems.
The system uses SQLite as the database platform, and SQLite is a lightweight, cross-platform relational database. Support most of the functions in SQL92 standard, including views, transactions, triggers, etc. The core engine of SQLite does not rely on third-party software and does not need to be "installed" to use it, so it can be deployed more easily. All information in its database, such as tables, views, triggers, etc., is contained in a file. This file can be copied to other directories or other machines without affecting the use [2].
3 System overview 3.1 Feasibility analysis The system runs on an Android phone and uses Android Studio to develop based on the Java language. The system uses the embedded lightweight database SQLite in the database. The system calls the Internet Information Service Interface. The overall structure is modular, the code structure is standardized, and the system has extremely high versatility, good scalability and strong maintainability [3]. In the current development process of the system, the existing manpower, material resources and technology can be fully developed. The mobile phone information service system is technically feasible.
The system development tool is Android Studio, which is a free and open source Android development integration environment. The database used by this system is the free embedded lightweight database SQLite. The Internet service function interface used in this system does not need to pay fees, and does not require excessive capital investment in the development process. Based on the market share of Android mobile devices, promotion and user use are relatively easy. Therefore, the mobile phone information service system is economically feasible.

Feasibility analysis
As a portal for the mobile phone information service system, the main functions of the login registration module can be divided into two types: registration and login. The system divides the registration and login functions into two pages, the user registration page and the user login page.
The information search function needs to be divided into the following five specific functions. VIN frame number search vehicle detailed information, brand car search brand under the detailed car name, DTC fault code search fault location description and solution suggestions, city weather search function return weather details and violations search to return detailed vehicle violation information.
The positioning function needs the positioning function to be an important function of the mobile phone information service system. This function is mainly implemented by using the positioning function provided by the high-tech map open platform, including the current position of the owner of the locomotive, the path planning of the person's workshop, and regional location function of the high incidence of violations.
The information query function needs, the information query class function is an auxiliary function of the mobile phone service system. The function is mainly divided into two specific functions. After the oil price inquiry in the province and the city, the oil price and the vehicle limit inquiry function return the limit line specific information.

System design
The information service system can be structurally divided into two aspects: user registration and system service functions. Users register and store their accounts and passwords in the local SQLite database. When they log in, they query the database and judge whether the user can log in successfully according to whether there is user information in the database. All kinds of services provided by the system are implemented by calling the Internet service API, sending requests through mobile phones, receiving return parameters and displaying the return results in the mobile interface [4].
As a whole, the functions of the system are mainly searched and returned by the Internet through calling the Internet interface and uploading parameters. According to the returned parameters, the mobile information service system carries out format conversion and display in the user's mobile phone interface. This is the main way to realize the mobile phone application. In programming, each module is basically composed of four main parts (except positioning function), namely uploading parameters, returning parameters, page activity and page layout. Location function design is relatively special, which is mainly developed by using SDK, an open platform of AMAP. Its design and implementation methods need to refer to the official documents of AMAP. The sub-function of passenger-vehicle path planning under positioning function is also based on AMAP. The function of passenger-vehicle path planning needs not only the current coordinates of the owner, but also in principle. Vehicle position coordinates need to be uploaded by vehicles, but because the development conditions do not meet the conditions of real-time upload of vehicle coordinates, so the second step is to use the way of simulation vehicle coordinates, that is, the coordinates of vehicles are fixed, through the way of realtime coordinates of owners and fixed coordinates of virtual vehicles, the coordinates of people and vehicles are obtained. Through the path planning function of AMAP, the path planning of human workshop is realized [5].

.1 Login registration function
The login interface identifies whether the input username and password are registered users. The system's username and password are stored in the user Info table of the device's local database SQLite. The information in the database table is read during login, and the user can be judged whether the user can login to the system or not according to the information [6]. After successful login, users jump to the main interface of the system function.
The interface mainly provides nine buttons, including VIN frame number, brand car system, DTC fault code, vehicle location, weather forecast, today's oil price, illegal search, illegal high-incidence area and tail number limit.
The main function of the registration interface is to manage the security of the system. First of all, it is necessary to determine whether the user has entered the required information. The user name and password of the system are stored in the user Info table of the device local database SQLite. When registering, the correct user account password is written into the database.

Information search function
Information search includes VIN frame number search function, brand car system search function, DTC fault code search function, weather forecast search function and illegal search function.
VIN frame number search function is mainly through the user input 17-bit VIN frame number in the functional interface, click the "search" button, the system calls the Internet VIN frame number query service interface, upload request parameters, and according to the return parameters, display the returned JSON data on the mobile screen. When the user did not enter the 17-bit VIN frame number and clicked the "Search" button, the system popped up the prompt "Please enter the VIN code".
The interface address is http://getVIN.api.juhe.cn/CarManagerServer/getVINFor mat. Support format: JSON Request: get Users input the name of the car brand to be searched in the functional interface, click the "search" button, and the system uploads the request parameters by calling the Internet car search service interface. According to the return parameters, the returned JSON data is displayed on the mobile screen, and the search results are arranged in tabular form. When the user does not enter the name of the automobile brand and clicks the "Search" button, the system pops up the prompt "Please enter the automobile brand".
Interface address: http://op.juhe.cn/onebox/car/brand Support format: JSON Request mode: http get The main function of the DTC fault code search function is to return the vehicle fault name represented by the fault code according to the DTC vehicle fault code input by the user, and provide the corresponding fault resolution suggestions. The function design is mainly to input the vehicle DTC fault code through the user interface, click the search button, and upload parameters through API. According to user input vehicle DTC fault code, vehicle fault is searched, and information including fault location, fault description, impact and solution suggestion is returned.
Interface address: http://getDTC.api.juhe.cn/CarManagerServer/getDTC Support format: JSON Request: Post The weather forecast search function searches the current city's weather forecast according to the user's input city name, and returns detailed information including the current city, today's weather, today's temperature, wind direction, clothing index, clothing suggestion, ultraviolet intensity, car washing index, travel index, morning exercise index, etc. Through calling the Internet weather forecast service interface, uploading request parameters, and according to the return parameters, the returned JSON data is displayed on the mobile screen. When the user does not enter the city name to search for the weather and clicks the "Search" button, the system pops up the prompt "Please enter the city name".
Interface address: http://v.juhe.cn/weather/index Support format: json/xml Request: get Violation search function, mainly according to the user input city code, license plate number and engine number, searches for vehicle violation information, returns the date, place, behaviour, code, penalty, and whether to deal with the detailed vehicle violation information. The system calls the Internet illegal search service interface, uploads request parameters, and displays the returned JSON data on the mobile screen according to the return parameters. When the user does not enter the city code and clicks the "Search" button, it prompts "Please enter the city name"; when the user does not enter the license plate number and clicks the "Search" button, it prompts "Please enter the license plate number"; when the user does not enter the VIN frame number and clicks the "Search" button, it prompts "Please enter the VIN frame number".

Positioning function
Vehicle positioning function, mainly through the user in the functional interface click the "vehicle positioning" button to locate the owner's current location, this function is realized through the development of Android positioning SDK provided by AMAP, through its positioning API to obtain positioning results, reverse geocoding (address text description) and geographic fence functions. The function of path planning in human workshop is to locate the current coordinates of the owner and the uploaded coordinates of the vehicle. Through the location of the human workshop, the shortest and most convenient path between two points can be intelligently planned.
To achieve this function, first we need to complete the display of map and location blue dots, and then realizes the function of walking path planning. Walk Route Overlay can be used to draw the walking road map layer, including the starting and ending points and turning points, according to the data of starting and ending points and walking routes. In addition, you can customize the icon of the end point and the turning point.
To display maps, prior to using the map SDK, the relevant permissions need to be set in the Android Manifest. XML file to ensure that the map function can be used properly.
The first step is to configure the Android Manifest. XML file and declare the permissions required by the map SDK (including its search function): <!--allow the program to open the network socket > > <uses-permission android:name= "android.permission.INTERNET" / > <!--allow the program to set the write permissions of the built-in SD card > > <uses-permission android:name= "android.permission.WRITE_EXTERNAL_STORAGE" / > <!--allow programs to get network status > > <uses-permission android:name= "android.permission.ACCESS_NETWORK_STATE" / > <!-allowing programs to access WiFi network information > <uses-permission android:name= "android.permission.ACCESS_WIFI_STATE" / > <!--allowing the program to read and write cell phone status and identity > <uses-permission android:name= "android.permission.READ_PHONE_STATE" / > <!--allow programs to access CellID or WiFi hotspots to get a rough location > > <uses-permission android:name= "android.permission.ACCESS_COARSE_LOCATION" / > Then, set up the AMAP Key, add the following contents into the application tag: <meta-data android:name= "com.amap.api.v2.apikey" android:value= "key" > // developer's key The second step is to add a map development kit to the project.
Step 1: add the so file, create a new jniLibs directory in the src/main/ directory, and put the file in it. Using default configuration, there is no need to modify build.gradle. Create the folder jniLibs in the main directory and copy the armeabi folder of the downloaded file into this directory.
Step 2: put the jar package in the LIBS directory. For each jar file, right-click -select Add As Library and import it into the project. Or use the menu bar to select File ->Project Structure->Modules-> Dependencies. Click on the green plus sign to select File dependency. Then select the jar package you want to add.
The third step is to display the map. The "AMap" class is the controller class for the map and is used to manipulate the map. The tasks it carries include: map layer switching (such as satellite maps, night maps), changing map states (map rotation angle, pitch angle, center point coordinates, and zoom level), adding marker markers (Marker), drawing geometry (Polyline, Polygon, Circle) and various types of event monitoring (clicks, gestures, etc.), "AMap" is the most important core class of the Map SDK, and many operations rely on it. After the MapView object has been initialized, construct an "AMap" object. Define a map view: MapView = (MapView) findViewById (R.id.map); MapView.onCreate (savedInstanceState); This method needs to be overwritten. The virtual machine needs to preserve the current state of map rendering in many cases.
Initialize map controller object: AMap aMap; If (aMap = = null) { AMap = mapView.getMap ();} The blue dot is displayed, and the blue dot refers to the function of displaying the current location point after entering the map. Since version 5.0.0 of Android Map SDK, it is not necessary to rely on Android to locate SDK. Map SDK and location SDK need to be introduced into the project before version 5.0.0.
Walk Route Overlay can be used to draw the road map layer, including the starting and ending points and turning points, according to the data of the starting and ending points and walking routes. In addition, you can customize the icon of the end point and the turning point.

Information query function
Users click on the "today's oil price" button in the main function interface. The system uploads the request parameters by calling the Internet oil price query service interface. According to the return parameters, the returned JSON data is displayed on the mobile screen. It shows the local oil price of the day of the provincial and municipal names, 92#, 95#, 98# three kinds of gasoline and 0# diesel oil.
Interface address: http://apis.juhe.cn/cnoil/oil_city Support format: json/xml Request: get/post Request example: http://apis.juhe.cn/cnoil/oil_city?key=APPKEY JSON returns data: {"city": "Beijing", "b90": "Jing 89: 6.02", "b93": "Beijing 92: 6.44", "b97": "Jing 95: 6.85", "b0": "6.07"} The user clicks the "tail number limit line" button on the main function interface. The system uploads the request parameters by calling the Internet tail number limit service interface, and displays the returned JSON data on the mobile phone screen according to the return parameters. Returns the year, month, day, week, and city of the limit at the time of the query, and returns specific information including the time limit, the restricted area, the penalty, other instructions, and whether or not the line is restricted today.

Conclusion
The information service system adopts the principle of software engineering, and completes the system development through requirements analysis, overall design and detailed design. The entire information service system has clear processes and comprehensive functions. The system mainly uses the combination of Android and SQLite technology, by calling the Internet service platform interface. Combining the service functions related to the owner's car, the system's practicality and ease of use are greatly enhanced. This system is a mobile phone information service system developed for car network users.
The main modules of the system are relatively simple to update in the future, using a lightweight SQLite database. The system also has the advantages of friendly interface, convenient operation, high efficiency and good safety. I believe that this information service system for car network users is indispensable information service software that helps car owners manage their cars in daily life and master vehicle information in real time.