diff --git a/code/src/Fitbot/.idea/misc.xml b/code/src/Fitbot/.idea/misc.xml index adba5f8..e88f6f5 100644 --- a/code/src/Fitbot/.idea/misc.xml +++ b/code/src/Fitbot/.idea/misc.xml @@ -40,6 +40,45 @@ + + + + diff --git a/code/src/Fitbot/app/src/main/AndroidManifest.xml b/code/src/Fitbot/app/src/main/AndroidManifest.xml index 33c9e33..12efb41 100644 --- a/code/src/Fitbot/app/src/main/AndroidManifest.xml +++ b/code/src/Fitbot/app/src/main/AndroidManifest.xml @@ -22,7 +22,7 @@ android:supportsRtl="true" android:theme="@style/Theme.Fitbot" > { - Intent intent = new Intent(EndScreenActivity.this, MainActivity.class); - startActivity(intent); - finish(); - }); + com.example.fitbot.util.ButtonNavigation.setupButtonNavigation(this, R.id.homeButton, MainActivity.class); + com.example.fitbot.util.ButtonNavigation.setupButtonNavigation(this, R.id.continueButton, FitnessActivity.class); } } \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java index dba7cfd..cc2331b 100644 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java @@ -2,11 +2,20 @@ package com.example.fitbot.ui.activities; import static com.example.fitbot.sports.Animations.Animate; +import android.content.Context; +import android.net.Uri; import android.os.Bundle; +import android.util.AttributeSet; +import android.view.View; +import android.widget.MediaController; +import android.widget.VideoView; + import com.aldebaran.qi.sdk.QiContext; import com.aldebaran.qi.sdk.QiSDK; import com.aldebaran.qi.sdk.RobotLifecycleCallbacks; import com.aldebaran.qi.sdk.design.activity.RobotActivity; +import com.example.fitbot.ui.activities.EndScreenActivity; +import com.example.fitbot.R; import com.example.fitbot.sports.Animations; public class FitnessActivity extends RobotActivity implements RobotLifecycleCallbacks { @@ -14,10 +23,24 @@ public class FitnessActivity extends RobotActivity implements RobotLifecycleCall @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - QiSDK.register(this, this); + setContentView(R.layout.activity_fitness); + VideoView videoView = findViewById(R.id.videoView); + videoView.setVideoURI(Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.bicepvideo)); + + MediaController mediaController = new MediaController(this); + videoView.setMediaController(mediaController); + videoView.start(); + + com.example.fitbot.util.ButtonNavigation.setupButtonNavigation(this, R.id.homeButton, MainActivity.class); + com.example.fitbot.util.ButtonNavigation.setupButtonNavigation(this, R.id.buttonComplete, EndScreenActivity.class); } + +// QiSDK.register(this, this); +// +// + @Override public void onRobotFocusGained(QiContext qiContext) { // Implement your logic when the robot focus is gained @@ -41,4 +64,12 @@ public class FitnessActivity extends RobotActivity implements RobotLifecycleCall super.onDestroy(); } -} + public static class PersonalMotionPreviewElement extends View { + + public PersonalMotionPreviewElement(Context context, AttributeSet attrs) { + super(context, attrs); + // Initialize your custom view here (optional) + } + } + +} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java index ca9fd5c..e760785 100644 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java @@ -1,11 +1,13 @@ package com.example.fitbot.ui.activities; -import static com.example.fitbot.sports.Animations.Animate; - +import android.Manifest; import android.annotation.SuppressLint; -import android.content.Intent; import android.bluetooth.BluetoothAdapter; +import android.content.Intent; +import android.content.pm.PackageManager; +import android.net.Uri; import android.os.Bundle; +import android.support.annotation.NonNull; import android.support.design.widget.NavigationView; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; @@ -16,16 +18,9 @@ import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.util.Log; import android.widget.Button; -import android.Manifest; -import android.content.pm.PackageManager; -import android.os.Bundle; -import android.util.Log; -import com.example.fitbot.bluetooth.BluetoothDevice; -import com.example.fitbot.wiiboard.WiiBoard; -import com.example.fitbot.wiiboard.WiiBoardDiscoverer; -import com.example.fitbot.wiiboard.WiiBoardDiscoveryListener; import com.example.fitbot.R; +import com.example.fitbot.wiiboard.WiiBoardDiscoverer; public class MainActivity extends AppCompatActivity { @@ -39,10 +34,20 @@ public class MainActivity extends AppCompatActivity { Button startButton; @SuppressLint("WrongViewCast") + @Override - protected void onCreate (Bundle savedInstanceState) { + protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main ); + setContentView(R.layout.activity_main); + + Button startButton = findViewById(R.id.startButton); + startButton.setOnClickListener(v -> { + Uri videoUri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.bicepvideo); + Intent intent = new Intent(MainActivity.this, FitnessActivity.class); + intent.putExtra("videoUri", videoUri); + startActivity(intent); + }); + // Check if the device supports Bluetooth if (BluetoothAdapter.getDefaultAdapter() == null) { @@ -62,7 +67,7 @@ public class MainActivity extends AppCompatActivity { } @Override - public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if (requestCode == REQUEST_LOCATION_PERMISSION && grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { // Permission granted, initialize WiiBoardDiscoverer diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/util/ButtonNavigation.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/util/ButtonNavigation.java new file mode 100644 index 0000000..1b20b2d --- /dev/null +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/util/ButtonNavigation.java @@ -0,0 +1,19 @@ +package com.example.fitbot.util; + +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.view.View; +import android.widget.Button; + +public class ButtonNavigation { + + public static void setupButtonNavigation(Activity currentActivity, int buttonId, Class targetActivity) { + Button button = currentActivity.findViewById(buttonId); + button.setOnClickListener(v -> { + Intent intent = new Intent(currentActivity, targetActivity); + currentActivity.startActivity(intent); + currentActivity.finish(); + }); + } +} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml b/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml index 3ae57cc..fd3a2e9 100644 --- a/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml +++ b/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml @@ -5,7 +5,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".EndScreenActivity"> + tools:context=".ui.activities.EndScreenActivity"> + - + + + + + + + + + + - + - +