diff --git a/.idea/modules.xml b/.idea/modules.xml index 92af58643bfa89c0f27e1531c072e9833294e9f8..223896e347e46d8dfc55407a6dddd77831a8af77 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -5,7 +5,6 @@ <module fileurl="file://F:\informatika\pbd\fitness\android.iml" filepath="F:\informatika\pbd\fitness\android.iml" /> <module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" /> <module fileurl="file://$PROJECT_DIR$/fitness.iml" filepath="$PROJECT_DIR$/fitness.iml" /> - <module fileurl="file://D:\tugas\sem6\pbd\tubes\android\fitness.iml" filepath="D:\tugas\sem6\pbd\tubes\android\fitness.iml" /> </modules> </component> </project> \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 1c45e7ed4898d16fa4e7d43fdfc7be5cdec2db45..9597d516cc8b7ab7a9c5a771b05657f60bdd936d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,6 +5,7 @@ android { defaultConfig { applicationId "com.example.leo.fitnessdiy" minSdkVersion 16 + multiDexEnabled true targetSdkVersion 26 versionCode 1 versionName "1.0" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a80048d0990c25943358428bc103339ee5def98a..0e576b99e30248188704eb8e685f8813a8ca7a2a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -21,9 +21,9 @@ android:hardwareAccelerated="false" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" + android:largeHeap="true" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" - android:largeHeap="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> @@ -37,6 +37,9 @@ <activity android:name=".HIstoryActivity" /> <activity android:name=".HomeActivity" /> <activity android:name=".PlankActivity" /> + <activity android:name=".PushupActivity" /> + <activity android:name=".SitupActivity" /> + <activity android:name=".ChatActivity" /> <activity android:name=".LevelActivity" /> <activity android:name=".ExerciseActivity" /> <!-- @@ -53,7 +56,8 @@ <activity android:name=".JoggingActivity" - android:label="@string/title_activity_jogging"></activity> + android:label="@string/title_activity_jogging" /> + <activity android:name=".SettingActivity"></activity> </application> </manifest> \ No newline at end of file diff --git a/app/src/main/java/com/example/leo/fitnessdiy/ChatActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/ChatActivity.java index 9e44e286aea62659e46839c29b8d4bdf6ba79903..58ec25dfed95ea1f6185b45f1edc2161f738c1b1 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/ChatActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/ChatActivity.java @@ -1,6 +1,7 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.support.annotation.NonNull; import android.support.design.widget.FloatingActionButton; import android.support.v7.app.AppCompatActivity; @@ -37,6 +38,14 @@ public class ChatActivity extends AppCompatActivity { super.onCreate(savedInstanceState); setContentView(R.layout.activity_chat); + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); + if(FirebaseAuth.getInstance().getCurrentUser() == null) { // Start sign in/sign up activity startActivityForResult( diff --git a/app/src/main/java/com/example/leo/fitnessdiy/ExerciseFragment.java b/app/src/main/java/com/example/leo/fitnessdiy/ExerciseFragment.java index ec8becc82eb7128d60c7efcd4f1786aa34cc03aa..658cd6bc9f5b8945080058ab5cfe53d8b2e24a34 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/ExerciseFragment.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/ExerciseFragment.java @@ -67,6 +67,25 @@ public class ExerciseFragment extends Fragment { Bundle savedInstanceState) { // Inflate the layout for this fragment View view = inflater.inflate(R.layout.fragment_exercise, container, false); + + Button pushupButton = (Button)view.findViewById(R.id.pushup_button); + pushupButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent i = new Intent(getActivity(), PushupActivity.class); + startActivity(i); + } + }); + + Button situpButton = (Button)view.findViewById(R.id.situp_button); + situpButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent i = new Intent(getActivity(), SitupActivity.class); + startActivity(i); + } + }); + Button plankButton = (Button)view.findViewById(R.id.plank_button); plankButton.setOnClickListener(new View.OnClickListener() { @Override @@ -75,6 +94,24 @@ public class ExerciseFragment extends Fragment { startActivity(i); } }); + + Button joggingButton = (Button)view.findViewById(R.id.jogging_button); + joggingButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent i = new Intent(getActivity(), JoggingActivity.class); + startActivity(i); + } + }); + + Button levelButton = (Button)view.findViewById(R.id.level_button); + levelButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent i = new Intent(getActivity(), LevelActivity.class); + startActivity(i); + } + }); return view; } diff --git a/app/src/main/java/com/example/leo/fitnessdiy/HIstoryActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/HIstoryActivity.java index 2985ca7ecd7409eb4d3cfde5c353a0dac6541fe9..b778c486b30f99817233549c5e686ba627dcb1d5 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/HIstoryActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/HIstoryActivity.java @@ -1,6 +1,8 @@ package com.example.leo.fitnessdiy; +import android.os.AsyncTask; +import android.os.StrictMode; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; @@ -33,12 +35,17 @@ public class HIstoryActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_history); - + if (android.os.Build.VERSION.SDK_INT > 9) { + StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); + StrictMode.setThreadPolicy(policy); + } String fetchResults = null; try { - fetchResults = NetworkUtils.getResponseFromHttpUrl(new URL(api.HISTORY_URL + "1")); + // fetchResults = "[{\"id\":\"1\",\"id_user\":\"1\",\"sport_name\":\"jogging\",\"sport_date\":\"2018-02-14\",\"sport_time_start\":\"09:00:00\",\"sport_time_end\":\"11:00:00\",\"created_at\":null,\"updated_at\":null},{\"id\":\"2\",\"id_user\":\"1\",\"sport_name\":\"jogging\",\"sport_date\":\"2018-02-15\",\"sport_time_start\":\"09:00:00\",\"sport_time_end\":\"11:00:00\",\"created_at\":null,\"updated_at\":null},{\"id\":\"3\",\"id_user\":\"1\",\"sport_name\":\"plank\",\"sport_date\":\"2018-02-16\",\"sport_time_start\":\"09:00:00\",\"sport_time_end\":\"09:45:00\",\"created_at\":null,\"updated_at\":null},{\"id\":\"4\",\"id_user\":\"1\",\"sport_name\":\"push-up\",\"sport_date\":\"2018-02-16\",\"sport_time_start\":\"10:00:00\",\"sport_time_end\":\"10:30:00\",\"created_at\":null,\"updated_at\":null}]"; + fetchResults = NetworkUtils.getResponseFromHttpUrl(new URL(api.HISTORY_URL + "1")); + initializeData(fetchResults); } catch (IOException e) { e.printStackTrace(); diff --git a/app/src/main/java/com/example/leo/fitnessdiy/HomeActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/HomeActivity.java index 7c9d1fb657584d7ae0fad4bf3f36643eba07c719..2c237eeda8b856f37755f74e1d20d8cabb0969fe 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/HomeActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/HomeActivity.java @@ -1,10 +1,15 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.net.Uri; import android.support.design.widget.FloatingActionButton; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; +import android.support.v7.widget.Toolbar; +import android.util.Log; +import android.view.Menu; +import android.view.MenuItem; import android.view.View; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; @@ -16,11 +21,26 @@ public class HomeActivity extends AppCompatActivity BlankFragment.OnFragmentInteractionListener{ private FloatingActionButton chatButton; + + private final String LOG_TAG = "BACKGROUND"; @Override public void onFragmentInteraction(Uri uri) { } + @Override + public boolean onCreateOptionsMenu(Menu menu) { + getMenuInflater().inflate(R.menu.setting_menu, menu); + return true; + } + + public boolean onOptionsItemSelected(MenuItem item) { + if(item.getItemId() == R.id.menu_setting_background) { + Intent i = new Intent(this, SettingActivity.class); + startActivity(i); + } + return true; + } @Override protected void onCreate(Bundle savedInstanceState) { @@ -28,6 +48,14 @@ public class HomeActivity extends AppCompatActivity setContentView(R.layout.activity_home); chatButton = findViewById(R.id.chat_button); chatButton.setImageResource(R.drawable.chat_icon); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); } public void openHistory(View view) { @@ -39,12 +67,6 @@ public class HomeActivity extends AppCompatActivity public void changeFragment(View view){ Fragment fragment; -// fragment = getSupportFragmentManager().findFragmentById(R.id.home_fragment); -// FragmentManager manager = getSupportFragmentManager(); -// if (fragment != null) { -// getSupportFragmentManager().beginTransaction().remove(fragment).commit(); -// manager.popBackStack(); -// } if(view == findViewById(R.id.history_button)){ fragment = new HistoryFragment(); @@ -70,6 +92,9 @@ public class HomeActivity extends AppCompatActivity startActivity(i); } public void goToChat(View view) { - + Intent i = new Intent(getApplicationContext(), ChatActivity.class); + startActivity(i); } + + } diff --git a/app/src/main/java/com/example/leo/fitnessdiy/InstanceIdService.java b/app/src/main/java/com/example/leo/fitnessdiy/InstanceIdService.java new file mode 100644 index 0000000000000000000000000000000000000000..341e69ebfed9fe3bf5d32db44782fea3b36b69a9 --- /dev/null +++ b/app/src/main/java/com/example/leo/fitnessdiy/InstanceIdService.java @@ -0,0 +1,20 @@ +package com.example.leo.fitnessdiy; + +import android.util.Log; + +import com.google.firebase.iid.FirebaseInstanceId; +import com.google.firebase.iid.FirebaseInstanceIdService; + +/** + * Created by Heil on 2/19/2018. + */ + +public class InstanceIdService extends FirebaseInstanceIdService { + + private static final String REG_TOKEN = "REG_TOKEN"; + @Override + public void onTokenRefresh() { + String recent_token = FirebaseInstanceId.getInstance().getToken(); + Log.d(REG_TOKEN, recent_token); + } +} diff --git a/app/src/main/java/com/example/leo/fitnessdiy/LevelActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/LevelActivity.java index 9de3ed63dc72ce67eca495ce01689fe6c6e691fe..eba5dcfcfacd61e068b8a79e8214493a7542fc66 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/LevelActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/LevelActivity.java @@ -1,5 +1,6 @@ package com.example.leo.fitnessdiy; +import android.content.SharedPreferences; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; @@ -11,6 +12,14 @@ public class LevelActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_level); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); } public void selectLevel(View view) { diff --git a/app/src/main/java/com/example/leo/fitnessdiy/LoginActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/LoginActivity.java index 46e789799f24967dbbebb7529e7b5d537dfeded9..e123133c7430954bf395f88cfaf4e6234e4cff37 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/LoginActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/LoginActivity.java @@ -1,6 +1,7 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; @@ -11,6 +12,21 @@ public class LoginActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + int background = R.drawable.green_theme; + try{ + background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + } catch(ClassCastException e){ + SharedPreferences.Editor preferencesEditor = mPreferences.edit(); + preferencesEditor.putInt(BACKGROUND_KEY, background); + preferencesEditor.apply(); + } finally { + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); + } } public void doLogin(View view) { diff --git a/app/src/main/java/com/example/leo/fitnessdiy/MainActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/MainActivity.java index 0a6ff84455540294a909d8e033f0778d521996b3..27f46564927b39c9575005a2bf874800380e02b6 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/MainActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/MainActivity.java @@ -1,12 +1,15 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; +import android.util.Log; import android.view.Menu; import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Toolbar; public class MainActivity extends AppCompatActivity { diff --git a/app/src/main/java/com/example/leo/fitnessdiy/MessagingService.java b/app/src/main/java/com/example/leo/fitnessdiy/MessagingService.java new file mode 100644 index 0000000000000000000000000000000000000000..2df23e214e6cc79ccc8e63684f1482b13674995f --- /dev/null +++ b/app/src/main/java/com/example/leo/fitnessdiy/MessagingService.java @@ -0,0 +1,32 @@ +package com.example.leo.fitnessdiy; + +import android.app.NotificationManager; +import android.app.PendingIntent; +import android.content.Context; +import android.content.Intent; +import android.support.v4.app.NotificationCompat; + +import com.google.firebase.messaging.FirebaseMessagingService; +import com.google.firebase.messaging.RemoteMessage; + +/** + * Created by Heil on 2/19/2018. + */ + +public class MessagingService extends FirebaseMessagingService{ + @Override + public void onMessageReceived(RemoteMessage remoteMessage) { + Intent intent = new Intent(this,MainActivity.class); + intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_ONE_SHOT); + NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this); + notificationBuilder.setContentTitle("First Notification"); + notificationBuilder.setContentText(remoteMessage.getNotification().getBody()); + notificationBuilder.setAutoCancel(true); + notificationBuilder.setSmallIcon(R.mipmap.ic_launcher); + notificationBuilder.setContentIntent(pendingIntent); + NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); + notificationManager.notify(0,notificationBuilder.build()); + + } +} diff --git a/app/src/main/java/com/example/leo/fitnessdiy/PlankActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/PlankActivity.java index c6fdfb270d99e562b2c5b5779b339eb9fd847d74..d60e8696b3ae6d63e42555d0cb49e7d8b8392636 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/PlankActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/PlankActivity.java @@ -1,19 +1,44 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.net.Uri; import android.os.CountDownTimer; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; +import android.util.Log; import android.view.View; import android.widget.TextView; +import com.example.leo.fitnessdiy.Utilities.NetworkUtils; +import com.example.leo.fitnessdiy.model.History; +import com.example.leo.fitnessdiy.model.Users; +import com.example.leo.fitnessdiy.routes.api; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; + public class PlankActivity extends AppCompatActivity { + private String LOG_TAG = "TES PLANK ACTIVITY"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_plank); +// printUser(1); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); } public String milisecondToMinutes(long l){ @@ -41,6 +66,40 @@ public class PlankActivity extends AppCompatActivity { }.start(); } + public Users initializeData(String data) { + Users user = new Users(); + try { + JSONArray parser = new JSONArray(data); + JSONObject json = parser.getJSONObject(0); + + int id = json.getInt("id"); + String username = json.getString("username"); + String password = json.getString("password"); + String email = json.getString("email"); + String phone_number = json.getString("phone_number"); + int age = json.getInt("age"); + String address = json.getString("address"); + String level = json.getString("level"); + user = new Users(id, username, password, email, phone_number, age, address, level); + } catch (JSONException e) { + e.printStackTrace(); + } + return user; + } + + public void printUser(int user_id){ + try { + URL url = new URL("http://ekiwae21.000webhostapp.com/fitness-server/users.php?user=1"); + String fetchResults = NetworkUtils.getResponseFromHttpUrl(url); + Users user = initializeData(fetchResults); + + Log.d(LOG_TAG, Integer.toString(user.getId())); + Log.d(LOG_TAG, user.getLevel()); + } catch (IOException e) { + e.printStackTrace(); + } + } + public void openVideo(View view) { String url = (String)view.getTag(); diff --git a/app/src/main/java/com/example/leo/fitnessdiy/PushupActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/PushupActivity.java index b33a874a0c79768f0afed942ea010be3a3188dfa..c2bdd3de4656e72b9a2e949c536db9ff3b72caef 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/PushupActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/PushupActivity.java @@ -1,10 +1,12 @@ package com.example.leo.fitnessdiy; import android.content.Intent; +import android.content.SharedPreferences; import android.net.Uri; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; +import android.widget.TextView; /** * Created by Heil on 2/19/2018. @@ -16,6 +18,14 @@ public class PushupActivity extends AppCompatActivity{ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_pushup); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); } public void openVideo(View view) { @@ -28,4 +38,10 @@ public class PushupActivity extends AppCompatActivity{ intent.setData(Uri.parse(url)); startActivity(intent); } + + + public void taskComplete(View view) { + TextView tv = (TextView)findViewById(R.id.pushUpTask); + tv.setText("Berhasil"); + } } diff --git a/app/src/main/java/com/example/leo/fitnessdiy/RegistrationActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/RegistrationActivity.java index 2ce95950aecc3640c6ad436df01f139935524503..4737a7fad4ffcb2a96701daf85d1757ffc5bdde8 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/RegistrationActivity.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/RegistrationActivity.java @@ -1,5 +1,6 @@ package com.example.leo.fitnessdiy; +import android.content.SharedPreferences; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; @@ -15,6 +16,14 @@ public class RegistrationActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.registration); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); } } diff --git a/app/src/main/java/com/example/leo/fitnessdiy/SettingActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/SettingActivity.java new file mode 100644 index 0000000000000000000000000000000000000000..ab6d2afa3ccf46d84f7e037023a153a510fc2463 --- /dev/null +++ b/app/src/main/java/com/example/leo/fitnessdiy/SettingActivity.java @@ -0,0 +1,53 @@ +package com.example.leo.fitnessdiy; + +import android.content.Intent; +import android.content.SharedPreferences; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.util.Log; +import android.view.View; + +public class SettingActivity extends AppCompatActivity { + private String LOG_TAG = "BACKGROUND"; + private String sharedPrefFile = "com.example.leo.fitnessdiy"; + private final String BACKGROUND_KEY = "background"; + private SharedPreferences mPreferences; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_setting); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); + } + + public void changeBackgroundColor(View view) { + int background = 0; + if(view.getId() == R.id.green_theme){ + background = R.drawable.green_theme; + } + if(view.getId() == R.id.red_theme){ + background = R.drawable.red_theme; + } + if(view.getId() == R.id.beach_theme){ + background = R.drawable.beach_theme; + } + if(view.getId() == R.id.natural_theme){ + background = R.drawable.natural_theme; + } + + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + SharedPreferences.Editor preferencesEditor = mPreferences.edit(); + preferencesEditor.putInt(BACKGROUND_KEY, background); + preferencesEditor.apply(); + + Intent i = new Intent(this, HomeActivity.class); + startActivity(i); + + } +} diff --git a/app/src/main/java/com/example/leo/fitnessdiy/SitupActivity.java b/app/src/main/java/com/example/leo/fitnessdiy/SitupActivity.java new file mode 100644 index 0000000000000000000000000000000000000000..0e49742d968efb1ba59afe8583d723af8b0c596a --- /dev/null +++ b/app/src/main/java/com/example/leo/fitnessdiy/SitupActivity.java @@ -0,0 +1,46 @@ +package com.example.leo.fitnessdiy; + +import android.content.Intent; +import android.content.SharedPreferences; +import android.net.Uri; +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; +import android.view.View; +import android.widget.TextView; + +/** + * Created by Heil on 2/19/2018. + */ + +public class SitupActivity extends AppCompatActivity{ + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_situp); + + SharedPreferences mPreferences; + String sharedPrefFile = "com.example.leo.fitnessdiy"; + final String BACKGROUND_KEY = "background"; + mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE); + + int background = mPreferences.getInt(BACKGROUND_KEY, R.drawable.green_theme); + getWindow().getDecorView().setBackground(getResources().getDrawable(background)); + } + + public void openVideo(View view) { + String url = (String)view.getTag(); + + Intent intent = new Intent(); + intent.setAction(Intent.ACTION_VIEW); + intent.addCategory(Intent.CATEGORY_BROWSABLE); + + intent.setData(Uri.parse(url)); + startActivity(intent); + } + + public void taskComplete(View view) { + TextView tv = (TextView)findViewById(R.id.sitUpTask); + tv.setText("Berhasil"); + } +} diff --git a/app/src/main/java/com/example/leo/fitnessdiy/Utilities/NetworkUtils.java b/app/src/main/java/com/example/leo/fitnessdiy/Utilities/NetworkUtils.java index f7e3dc59886928d63cb4529aee6620b7717b64ef..282008151143987b3a6603c59d615ccde89244ee 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/Utilities/NetworkUtils.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/Utilities/NetworkUtils.java @@ -1,7 +1,9 @@ package com.example.leo.fitnessdiy.Utilities; import android.net.Uri; +import android.os.AsyncTask; +import java.io.BufferedInputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; diff --git a/app/src/main/java/com/example/leo/fitnessdiy/model/Users.java b/app/src/main/java/com/example/leo/fitnessdiy/model/Users.java new file mode 100644 index 0000000000000000000000000000000000000000..cf9443e14aa6f448e56e5b1592361fc683a91918 --- /dev/null +++ b/app/src/main/java/com/example/leo/fitnessdiy/model/Users.java @@ -0,0 +1,66 @@ +package com.example.leo.fitnessdiy.model; + +public class Users { + private int id; + private String username; + private String password; + private String email; + private String phone_number; + private int age; + private String address; + private String level; + + public Users(int id, String username, String password, String email, String phone_number, int age, String address, String level) { + this.id = id; + this.username = username; + this.password = password; + this.email = email; + this.phone_number = phone_number; + this.age = age; + this.address = address; + this.level = level; + } + + public Users() { + this.id = 0; + this.username = ""; + this.password = ""; + this.email = ""; + this.phone_number = ""; + this.age = 0; + this.address = ""; + this.level = ""; + } + + public int getId() { + return id; + } + + public String getUsername() { + return username; + } + + public String getPassword() { + return password; + } + + public String getEmail() { + return email; + } + + public String getPhone_number() { + return phone_number; + } + + public int getAge() { + return age; + } + + public String getAddress() { + return address; + } + + public String getLevel() { + return level; + } +} diff --git a/app/src/main/java/com/example/leo/fitnessdiy/routes/api.java b/app/src/main/java/com/example/leo/fitnessdiy/routes/api.java index 666572e23393dd79d1bd8d9dd4e845a1108a5573..bc376334330225122010e16b0a1a798bf35279ed 100644 --- a/app/src/main/java/com/example/leo/fitnessdiy/routes/api.java +++ b/app/src/main/java/com/example/leo/fitnessdiy/routes/api.java @@ -5,7 +5,11 @@ package com.example.leo.fitnessdiy.routes; */ public class api { - public static final String BASE_URL = "http://10.5.26.200/fitness-server/"; + public static final String BASE_URL = "http://ekiwae21.000webhostapp.com/fitness-server/"; + // kalo emulator 10.0.2.2 atau 10.0.0.2 + // atau ipconfig, cek ipv4 public static final String HISTORY_URL = BASE_URL + "history.php?user="; + + public static final String USERS_URL = BASE_URL + "users.php?user="; } diff --git a/app/src/main/res/drawable/beach_theme.jpg b/app/src/main/res/drawable/beach_theme.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7b4586d70f5d75db3362908b402af84ea726fdb0 Binary files /dev/null and b/app/src/main/res/drawable/beach_theme.jpg differ diff --git a/app/src/main/res/drawable/green_theme.jpg b/app/src/main/res/drawable/green_theme.jpg new file mode 100644 index 0000000000000000000000000000000000000000..144395057257ec107acb64c04d98e7e01ded722d Binary files /dev/null and b/app/src/main/res/drawable/green_theme.jpg differ diff --git a/app/src/main/res/drawable/natural_theme.jpg b/app/src/main/res/drawable/natural_theme.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8d86c9bdf8f684830d1cf990e9e4e1aa52704fea Binary files /dev/null and b/app/src/main/res/drawable/natural_theme.jpg differ diff --git a/app/src/main/res/drawable/pushup_video1.png b/app/src/main/res/drawable/pushup_video_1.png similarity index 100% rename from app/src/main/res/drawable/pushup_video1.png rename to app/src/main/res/drawable/pushup_video_1.png diff --git a/app/src/main/res/drawable/pushup_video2.png b/app/src/main/res/drawable/pushup_video_2.png similarity index 100% rename from app/src/main/res/drawable/pushup_video2.png rename to app/src/main/res/drawable/pushup_video_2.png diff --git a/app/src/main/res/drawable/red_theme.jpg b/app/src/main/res/drawable/red_theme.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a5d00481a7e7b1d1d3be59d13052ba081c8cca99 Binary files /dev/null and b/app/src/main/res/drawable/red_theme.jpg differ diff --git a/app/src/main/res/drawable/situp_video_1.png b/app/src/main/res/drawable/situp_video_1.png new file mode 100644 index 0000000000000000000000000000000000000000..09dd0f57d2ee8808b76de822bd7ebebd5145e2df Binary files /dev/null and b/app/src/main/res/drawable/situp_video_1.png differ diff --git a/app/src/main/res/drawable/situp_video_2.png b/app/src/main/res/drawable/situp_video_2.png new file mode 100644 index 0000000000000000000000000000000000000000..63075dafe854147faa9e46291dd9f30eabd916d2 Binary files /dev/null and b/app/src/main/res/drawable/situp_video_2.png differ diff --git a/app/src/main/res/layout/activity_exercise.xml b/app/src/main/res/layout/activity_exercise.xml index d8569bcb0b57c1e9af591fdacd85f0cc00079a17..47890d168a1fe76f0c2e282ffdc81f062d9a9430 100644 --- a/app/src/main/res/layout/activity_exercise.xml +++ b/app/src/main/res/layout/activity_exercise.xml @@ -9,6 +9,20 @@ <Button android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="Plank"/> + android:text="Push Up" + android:id="@+id/gotoPushUp"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Sit Up" + android:id="@+id/gotoSitUp"/> + + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Plank" + android:id="@+id/gotoPlank"/> </LinearLayout> diff --git a/app/src/main/res/layout/activity_home.xml b/app/src/main/res/layout/activity_home.xml index cb97e984eb4945d7f0d54dff861b54cc68a97f04..dec7caff1f99854debe9f087e008d133870eb213 100644 --- a/app/src/main/res/layout/activity_home.xml +++ b/app/src/main/res/layout/activity_home.xml @@ -11,38 +11,37 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> + <Button android:id="@+id/history_button" - android:layout_width="wrap_content" + android:layout_width="0dp" + android:layout_weight="1" android:layout_height="wrap_content" android:onClick="openHistory" - android:text="@string/history"/> + android:text="@string/history" /> + <Button android:id="@+id/exercise_button" - android:layout_width="wrap_content" + android:layout_width="0dp" + android:layout_weight="1" android:layout_height="wrap_content" - android:text="@string/exercise" - android:onClick="changeFragment"/> - <Button - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Jogging" - android:onClick="openJogging"/> + android:onClick="changeFragment" + android:text="@string/exercise" /> </LinearLayout> <fragment android:id="@+id/home_fragment" android:name="com.example.leo.fitnessdiy.BlankFragment" android:layout_width="match_parent" - android:layout_height="471dp" /> + android:layout_height="471dp" + /> <android.support.design.widget.FloatingActionButton android:id="@+id/chat_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" - android:onClick="goToChat"/> - + android:onClick="goToChat" /> </LinearLayout> diff --git a/app/src/main/res/layout/activity_level.xml b/app/src/main/res/layout/activity_level.xml index e71cff343a60008a1223f74935208fdfb25934ef..b64142d143920c8ba898b12352c880ac0aa375eb 100644 --- a/app/src/main/res/layout/activity_level.xml +++ b/app/src/main/res/layout/activity_level.xml @@ -11,9 +11,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Select Your Level" - android:layout_marginBottom="150dp" - android:textSize="40sp" - android:layout_gravity="center"/> + android:layout_marginBottom="80dp" + android:textSize="40sp" /> <RadioGroup xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" diff --git a/app/src/main/res/layout/activity_plank.xml b/app/src/main/res/layout/activity_plank.xml index b4941ba5686e7365bc8a362dfdf3050d674059fe..84d255c47a2266e6c2b86eee567378df6b779e3e 100644 --- a/app/src/main/res/layout/activity_plank.xml +++ b/app/src/main/res/layout/activity_plank.xml @@ -1,84 +1,93 @@ <?xml version="1.0" encoding="utf-8"?> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:orientation="vertical" tools:context="com.example.leo.fitnessdiy.PlankActivity"> - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginBottom="100dp" - android:text="@string/plank" /> - <Button - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_horizontal" - android:layout_marginBottom="30dp" - android:onClick="countDownPlank" - android:text="start" /> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> - <TextView - android:id="@+id/count_timer" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_horizontal" - android:textSize="32sp" - android:text="2 : 00" /> + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="50dp" + android:text="@string/plank" + android:textSize="32sp" /> - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginBottom="30dp" - android:text="@string/plank_video" /> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginBottom="30dp" + android:onClick="countDownPlank" + android:text="start" /> + <TextView + android:id="@+id/count_timer" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:text="2 : 00" + android:textSize="32sp" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="30dp" + android:text="@string/plank_video" + android:textSize="30sp"/> - <!--<ScrollView--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content">--> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:orientation="horizontal" - android:tag="https://www.youtube.com/watch?v=TvxNkmjdhMM" + android:layout_margin="4dp" android:clickable="true" android:focusable="true" android:onClick="openVideo" - android:layout_margin="4dp" - > + android:orientation="vertical" + android:tag="https://www.youtube.com/watch?v=TvxNkmjdhMM"> + <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@drawable/plank_video_1"/> + android:layout_gravity="left" + android:src="@drawable/plank_video_1" /> + <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="How to Plank"/> + android:text="How to Plank" + android:textSize="20sp" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:orientation="horizontal" - android:tag="https://www.youtube.com/watch?v=_nZgpZLf7ZA" + android:layout_margin="4dp" android:clickable="true" android:focusable="true" android:onClick="openVideo" - android:layout_margin="4dp"> + android:orientation="vertical" + android:tag="https://www.youtube.com/watch?v=_nZgpZLf7ZA"> + <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@drawable/plank_video_2"/> + android:layout_gravity="left" + android:src="@drawable/plank_video_2" /> + <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="Benefits of Plank"/> + android:text="Benefits of Plank" + android:textSize="20sp" /> </LinearLayout> - <!--</ScrollView>--> - -</LinearLayout> + </LinearLayout> +</ScrollView> diff --git a/app/src/main/res/layout/activity_pushup.xml b/app/src/main/res/layout/activity_pushup.xml index 174aad103fa2aa91563d3e0d2a765aa080f24197..fbd5f621fd11217b50f19b0a6c7ac1f0d386b62e 100644 --- a/app/src/main/res/layout/activity_pushup.xml +++ b/app/src/main/res/layout/activity_pushup.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" @@ -7,80 +7,89 @@ android:orientation="vertical" tools:context="com.example.leo.fitnessdiy.PushupActivity"> - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginBottom="100dp" - android:text="@string/pushup" /> - <!--<Button--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content"--> - <!--android:layout_gravity="center_horizontal"--> - <!--android:layout_marginBottom="30dp"--> - <!--android:onClick="countDownPlank"--> - <!--android:text="start" />--> - - <!--<TextView--> - <!--android:id="@+id/count_timer"--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content"--> - <!--android:layout_gravity="center_horizontal"--> - <!--android:textSize="32sp"--> - <!--android:text="2 : 00" />--> - - <TextView + <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginBottom="30dp" - android:text="@string/pushup_video" /> + android:orientation="vertical"> + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="100dp" + android:text="@string/pushup" /> + <TextView + android:id="@+id/pushUpTask" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="30dp" + android:layout_gravity="center_horizontal" + android:text="Do Push Up 30 Times" + android:textSize="18dp" /> - <!--<ScrollView--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content">--> - <LinearLayout - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="4dp" - android:clickable="true" - android:focusable="true" - android:onClick="openVideo" - android:orientation="horizontal" - android:tag="https://www.youtube.com/watch?v=IODxDxX7oi4"> - - <ImageView - android:layout_width="260dp" - android:layout_height="158dp" - android:src="@drawable/pushup_video1" /> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginBottom="30dp" + android:onClick="taskComplete" + android:text="Selesai" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/pushup_demo" /> - </LinearLayout> + android:layout_marginBottom="30dp" + android:text="@string/pushup_video" /> - <LinearLayout - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="horizontal" - android:tag="https://www.youtube.com/watch?v=lHjj5vmzpy0" - android:clickable="true" - android:focusable="true" - android:onClick="openVideo" - android:layout_margin="4dp"> - - <ImageView - android:layout_width="258dp" - android:layout_height="148dp" - android:src="@drawable/pushup_video2" /> - <TextView + + + <!--<ScrollView--> + <!--android:layout_width="wrap_content"--> + <!--android:layout_height="wrap_content">--> + + <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/motivation_pushup"/> - </LinearLayout> + android:layout_margin="4dp" + android:clickable="true" + android:focusable="true" + android:onClick="openVideo" + android:orientation="horizontal" + android:tag="https://www.youtube.com/watch?v=IODxDxX7oi4"> + + <ImageView + android:layout_width="260dp" + android:layout_height="158dp" + android:src="@drawable/pushup_video_1" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/pushup_demo" /> + </LinearLayout> - <!--</ScrollView>--> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="horizontal" + android:tag="https://www.youtube.com/watch?v=lHjj5vmzpy0" + android:clickable="true" + android:focusable="true" + android:onClick="openVideo" + android:layout_margin="4dp"> + <ImageView + android:layout_width="258dp" + android:layout_height="148dp" + android:src="@drawable/pushup_video_2" /> + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/motivation_pushup"/> + </LinearLayout> + + <!--</ScrollView>--> + + </LinearLayout> -</LinearLayout> +</ScrollView> diff --git a/app/src/main/res/layout/activity_setting.xml b/app/src/main/res/layout/activity_setting.xml new file mode 100644 index 0000000000000000000000000000000000000000..4f7dcf2d564aa0a2e48b6d262276377200adb59e --- /dev/null +++ b/app/src/main/res/layout/activity_setting.xml @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + tools:context="com.example.leo.fitnessdiy.SettingActivity" + android:orientation="vertical"> + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:textSize="32sp" + android:layout_marginBottom="20dp" + android:textColor="@android:color/black" + android:text="Select Background Color"/> + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="@android:color/darker_gray"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/green_theme" + android:text="Green Theme" + android:textSize="20sp" + android:layout_margin="6dp" + android:onClick="changeBackgroundColor" + /> + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="@android:color/darker_gray"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/red_theme" + android:text="Red Theme" + android:textSize="20sp" + android:layout_margin="6dp" + android:onClick="changeBackgroundColor"/> + + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="@android:color/darker_gray"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/beach_theme" + android:text="Beach Theme" + android:textSize="20sp" + android:layout_margin="6dp" + android:onClick="changeBackgroundColor"/> + + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="@android:color/darker_gray"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/natural_theme" + android:text="Natural Theme" + android:textSize="20sp" + android:layout_margin="6dp" + android:onClick="changeBackgroundColor"/> + + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="@android:color/darker_gray"/> + + +</LinearLayout> diff --git a/app/src/main/res/layout/activity_situp.xml b/app/src/main/res/layout/activity_situp.xml new file mode 100644 index 0000000000000000000000000000000000000000..0cb6d6e0de086fe526e92b22a918a64e2dc32ba3 --- /dev/null +++ b/app/src/main/res/layout/activity_situp.xml @@ -0,0 +1,94 @@ +<?xml version="1.0" encoding="utf-8"?> +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + tools:context="com.example.leo.fitnessdiy.SitupActivity"> + + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="vertical" > + + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="100dp" + android:text="@string/situp" /> + + <TextView + android:id="@+id/sitUpTask" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="30dp" + android:layout_gravity="center_horizontal" + android:text="Do Sit Up 30 times" + android:textSize="18dp" /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginBottom="30dp" + android:onClick="taskComplete" + android:text="Selesai" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="30dp" + android:text="@string/situp_video" /> + + + + <!--<ScrollView--> + <!--android:layout_width="wrap_content"--> + <!--android:layout_height="wrap_content">--> + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_margin="4dp" + android:clickable="true" + android:focusable="true" + android:onClick="openVideo" + android:orientation="horizontal" + android:tag="https://www.youtube.com/watch?v=IODxDxX7oi4"> + + <ImageView + android:layout_width="260dp" + android:layout_height="158dp" + android:src="@drawable/situp_video_1" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/situp_demo" /> + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="horizontal" + android:tag="https://www.youtube.com/watch?v=lHjj5vmzpy0" + android:clickable="true" + android:focusable="true" + android:onClick="openVideo" + android:layout_margin="4dp"> + + <ImageView + android:layout_width="258dp" + android:layout_height="148dp" + android:src="@drawable/situp_video_2" /> + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/motivation_situp"/> + </LinearLayout> + + </LinearLayout> + <!--</ScrollView>--> + + +</ScrollView> diff --git a/app/src/main/res/layout/fragment_exercise.xml b/app/src/main/res/layout/fragment_exercise.xml index c28ca5dda596664c6ae265ce6576e3dc626c7533..f05accb1a656fea02aae7d3de165b1954fda0dce 100644 --- a/app/src/main/res/layout/fragment_exercise.xml +++ b/app/src/main/res/layout/fragment_exercise.xml @@ -4,11 +4,43 @@ android:layout_height="match_parent" tools:context="com.example.leo.fitnessdiy.ExerciseFragment"> - <Button - android:id="@+id/plank_button" + + <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="Plank" - /> + android:orientation="vertical" + android:layout_gravity="center"> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Push Up" + android:id="@+id/pushup_button"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Sit Up" + android:id="@+id/situp_button" /> + + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Plank" + android:id="@+id/plank_button"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Jogging" + android:id="@+id/jogging_button"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="LEVEL" + android:id="@+id/level_button"/> + + </LinearLayout> </FrameLayout> diff --git a/app/src/main/res/menu/setting_menu.xml b/app/src/main/res/menu/setting_menu.xml new file mode 100644 index 0000000000000000000000000000000000000000..35967835e74bc8c977c4a6b079576a1fbe493741 --- /dev/null +++ b/app/src/main/res/menu/setting_menu.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + + <item android:title="Background" + app:showAsAction="never" + android:id="@+id/menu_setting_background"/> + +</menu> \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index f0885f0a9a1204483bb47114d57b8d96c3830905..b63175215fe54ee9fe058fd173f19a0098c797f9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -24,4 +24,8 @@ <string name="motivation_pushup">Push Up Challenge : Before and After</string> <string name="pushup_demo">How to Push Up Properly</string> <string name="pushup_video">Push Up Video</string> + <string name="situp">Sit Up</string> + <string name="motivation_situp">Sit Up Challenge : Before and After</string> + <string name="situp_demo">How to do sit up properly</string> + <string name="situp_video">Sit Up Video</string> </resources> diff --git a/gradle.properties b/gradle.properties index b30aa687d299822586e8f9908e7834d3dfe63a9c..43350e51b766e93ecedf2a45b8fcf9f0e411dee3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -12,12 +12,3 @@ # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true -#Mon Feb 19 17:31:00 GMT+07:00 2018 -systemProp.http.proxyPassword=02414056 -systemProp.http.proxyHost=cache.itb.ac.id -systemProp.https.proxyPort=8080 -systemProp.https.proxyUser=leo16515325 -systemProp.https.proxyHost=cache.itb.ac.id -systemProp.https.proxyPassword=02414056 -systemProp.http.proxyUser=leo16515325 -systemProp.http.proxyPort=8080