Release Note - API Level 1

Key facts

Supported Languages

The supported languages for voice interaction with the robot are currently:

  • English
  • Japanese
  • French
  • Chinese

Remote ASR Engine - List of supported Languages

['English', 'Japanese', 'Chinese', 'MandarinTaiwan']

Planned evolutions

  • Bug #38337 Template arguments in QiCallback, QiFunction, FutureFunction is not following JAVA standard.

    API Level 1 API Level 2
    public interface FutureFunction<Ret, Arg> {
      Future<Ret> execute(Future<Arg> future)
    ...
    
    public interface FutureFunction<Arg, Ret> {
    Future<Ret> execute(Future<Arg> future)
    ...
    
  • Bug #38431 then and andThen API is not fully libqi compliant.

    API Level 1 API Level 2
    public interface FutureFunction<Ret, Arg> {
        Future<Ret> execute(Future<Arg> future)
    ...
    
    public interface FutureFunction<Arg, Ret> {
    Ret execute(Future<Arg> future)
    public interface
    Function<Arg, Ret> {
    Ret execute(Arg value)
    

API changes

  • QiSDK.init(Application) method is removed.

    The QiSDK now gets automatically initialized for your application. There is no need to create a custom Application class anymore.

    API Level 1 API Level 2
    public class RobotApplication extends Application {
    
        @Override
        public void onCreate() {
            super.onCreate();
            QiSDK.init(this);
        }
    }
    
    Nothing needed
  • The onRobotFocusGained callback does not throw an ExecutionException anymore.

    You must update the signature for your code to compile.

    API Level 1 API Level 2
    void onRobotFocusGained(QiContext qiContext) throws ExecutionException;
    
    void onRobotFocusGained(QiContext qiContext);