Creating basic applications using the ROS-Android interface

We have covered Android - ROS applications provided from the ROS repository. So how can we create our own application using it? Let's take a look.

First, we have to create a separate workspace for our application. Here, it is named myandroid:

    $ mkdir -p ~/myandroid/src

Switch to the workspace's src folder:

    $ cd ~/myandroid/src

Create a package called android_foo that depends on android_core, rosjava_core, and std_msg:

    $ catkin_create_android_pkg android_foo android_core rosjava_core std_msgs

Switch into android_foo and add sample libraries to check whether the project is building properly:

    $ cd android_foo
    
    $ catkin_create_android_project -t 10 -p com.github.ros_java.android_foo.bar bar
    
    $ catkin_create_android_library_project -t 13 -p com.github.ros_java.android_foo.barlib barlib
    
    $ cd ../..

And finally, you can build the empty project using catkin_make:

    $ catkin_make

If it is building properly, you can add a custom project, such as a bar project. The custom project should be inside the android_foo folder, and it should be included in the settings.gradle file, which is in the android_foo folder.

Here is how we can do that. You need to include our app, named my_ros_app, in this file to build it. For the application source code, you can modify one of the existing ROS-Android applications' code and write new lines:

include 'my_ros_app' 
include 'bar' 
include 'barlib' 

Also, inside my_ros_app, you should include the ROS Android dependencies in the build.gradle file; otherwise, the package will not build properly. Here is a sample build.gradle file. You can also mention the minimum SDK, target SDK, and compiled SDK versions in the same file.

    dependencies { 
        compile 'org.ros.android_core:android_10:[0.2,0.3)' 
        compile 'org.ros.android_core:android_15:[0.2,0.3)' 
    } 
   
    apply plugin: 'com.android.application' 
 
    android { 
       compileSdkVersion 15 
 
      defaultConfig { 
        minSdkVersion 15 
        applicationId "org.ros.android.my_ros_app" 
        targetSdkVersion 21 
        versionCode 1 
        versionName "1.0" 
      } 
    } 

If you've entered all this information correctly, you can build your own custom ROS-Android application.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.71.142