diff --git a/.idea/misc.xml b/.idea/misc.xml index ba75a422d091c9d3d53707e815988d5a15208306..04c63e41f3771e1aeccd983a1512d164af3ddf22 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -53,7 +53,7 @@ <ConfirmationsSetting value="0" id="Add" /> <ConfirmationsSetting value="0" id="Remove" /> </component> - <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" default="true" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> <output url="file://$PROJECT_DIR$/build/classes" /> </component> <component name="ProjectType"> diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a8ea64ad78016850e536975689ef057704cad495..fd807553666bfd08ced8ff36e00acefb6404edb3 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -36,9 +36,10 @@ <service android:name=".SMSReader" android:enabled="true" - android:exported="true"></service> + android:exported="true" /> - <activity android:name=".ContactSelection"></activity> + <activity android:name=".ContactSelection" /> + <activity android:name=".confirmationScreen"></activity> </application> </manifest> \ No newline at end of file diff --git a/app/src/main/java/com/speedyapps/keepyousafe/MainActivity.java b/app/src/main/java/com/speedyapps/keepyousafe/MainActivity.java index 8b2daa580a1268ab3b7f1a0f5be2c7b48ffd8506..3f842e36d7f3a4fb3f03406701979f54bb985c1f 100644 --- a/app/src/main/java/com/speedyapps/keepyousafe/MainActivity.java +++ b/app/src/main/java/com/speedyapps/keepyousafe/MainActivity.java @@ -9,58 +9,44 @@ import android.os.Bundle; import android.telephony.SmsManager; import android.util.Log; import android.view.View; +import android.widget.ImageButton; public class MainActivity extends AppCompatActivity { - Intent intent;int choice,count; - String n,n1; - public static String file1 = "MyPREFERENCES"; - public static String file2 = "PREFERENCES"; - public static String file3 = "COUNT"; - SharedPreferences sharedpreferences,sp,shared; + Intent intent; + int choice; + + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - sharedpreferences = getSharedPreferences(file1, Context.MODE_PRIVATE); - sp = getSharedPreferences(file2, Context.MODE_PRIVATE); - shared = getSharedPreferences(file3, Context.MODE_PRIVATE); - intent = new Intent(MainActivity.this,alarmService.class); + intent = new Intent(MainActivity.this,confirmationScreen.class); choice=0; Intent serviceIntent = new Intent(MainActivity.this,SMSReader.class); startService(serviceIntent); + ImageButton help = (ImageButton)findViewById(R.id.helpButton); + help.setOnLongClickListener(new View.OnLongClickListener(){ + public boolean onLongClick(View v){ + onClick(); + return true; + } - } - public void onClick(View view){ - Log.i("zz",""+choice); - switch(choice) { - case 0: - startService(intent); - count = shared.getInt("count", 0); - Log.d("COUNT", String.valueOf(count)); - for (int i = 1; i <= count; i++) - { - n1 = sp.getString("value" + i, ""); - n = sharedpreferences.getString(n1, ""); - Log.d("sub",n); - try - { - if(!(n.isEmpty())) - { - sendSMS(n, "Help Me!!!!"); - } - } - catch (Exception e){} - } - - + }); - break; - case 1: stopService(intent); - break; + } + public void onClick(){ + Log.i("zz",""+choice); + switch(choice) { + case 0: + startActivity(intent); + break; + case 1: stopService(intent); + break; + } + + choice=(choice+1)%2; } - choice=(choice+1)%2; - } public void contact(View v) { @@ -68,10 +54,5 @@ public class MainActivity extends AppCompatActivity { startActivity(i); } - public void sendSMS(String phoneNumber, String message) - { - SmsManager sms = SmsManager.getDefault(); - sms.sendTextMessage(phoneNumber, null, message, null, null); - } } diff --git a/app/src/main/java/com/speedyapps/keepyousafe/alarmService.java b/app/src/main/java/com/speedyapps/keepyousafe/alarmService.java index cb6274dd89aca27d66f00ad8acc32ee4206667e0..cc5f1980f69e17103404e9abba64bb169f55a60f 100644 --- a/app/src/main/java/com/speedyapps/keepyousafe/alarmService.java +++ b/app/src/main/java/com/speedyapps/keepyousafe/alarmService.java @@ -23,14 +23,14 @@ public class alarmService extends Service { super.onCreate(); mediaPlayer = MediaPlayer.create(this,R.raw.danger); - forceFullVolume(); + // forceFullVolume(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { mediaPlayer.start(); - forceFullVolume(); + // forceFullVolume(); return super.onStartCommand(intent, flags, startId); } diff --git a/app/src/main/java/com/speedyapps/keepyousafe/confirmationScreen.java b/app/src/main/java/com/speedyapps/keepyousafe/confirmationScreen.java new file mode 100644 index 0000000000000000000000000000000000000000..425b8c84499f427258dffda30cfb7c59036758b3 --- /dev/null +++ b/app/src/main/java/com/speedyapps/keepyousafe/confirmationScreen.java @@ -0,0 +1,94 @@ +package com.speedyapps.keepyousafe; + +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; +import android.os.Handler; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.telephony.SmsManager; +import android.util.Log; +import android.view.View; +import android.widget.EditText; +import android.widget.TextView; +import android.widget.Toast; + +import org.w3c.dom.Text; + +public class confirmationScreen extends AppCompatActivity { + TextView textView ; + EditText editText ; + SharedPreferences sharedpreferences,sp,shared; + String n,n1; + int count,i; + public static String file1 = "MyPREFERENCES"; + public static String file2 = "PREFERENCES"; + public static String file3 = "COUNT"; + Handler handler; + Intent alarmIntent ; + Runnable run; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_confirmation_screen); + handler=new Handler(); + alarmIntent = new Intent(confirmationScreen.this,alarmService.class); + textView= (TextView)findViewById(R.id.countDown); + editText=(EditText)findViewById(R.id.editTextPIN); + sharedpreferences = getSharedPreferences(file1, Context.MODE_PRIVATE); + sp = getSharedPreferences(file2, Context.MODE_PRIVATE); + shared = getSharedPreferences(file3, Context.MODE_PRIVATE); + i=10; + run = new Runnable() { + @Override + public void run() { + textView.setText(""+i); + if((i--)<=0){ + distressCall(); + handler.removeCallbacks(this); + } + else + handler.postDelayed(this,1000); + } + }; + handler.post(run); + } + + public void onCancel(View view){ + if((!editText.getText().toString().equals("2020"))&&textView.getText().toString().equals("0")) + distressCall(); + else if(editText.getText().toString().equals("2020")){ + handler.removeCallbacks(run); + Toast.makeText(this, "Cancelled Distress Signals!", Toast.LENGTH_SHORT).show(); + Intent main = new Intent(confirmationScreen.this,MainActivity.class); + stopService(alarmIntent); + startActivity(main); + } + + } + public void distressCall(){ + startService(alarmIntent); + count = shared.getInt("count", 0); + Log.d("COUNT", String.valueOf(count)); + for (int i = 1; i <= count; i++) + { + n1 = sp.getString("value" + i, ""); + n = sharedpreferences.getString(n1, ""); + Log.d("sub",n); + try + { + if(!(n.isEmpty())) + { + sendSMS(n, "Help Me!!!!"); + } + } + catch (Exception e){} + } + } + public void sendSMS(String phoneNumber, String message) + { + SmsManager sms = SmsManager.getDefault(); + sms.sendTextMessage(phoneNumber, null, message, null, null); + + } +} diff --git a/app/src/main/res/layout/activity_confirmation_screen.xml b/app/src/main/res/layout/activity_confirmation_screen.xml new file mode 100644 index 0000000000000000000000000000000000000000..a32030b7d5f7011fa63b301cb81411f5f7e5d5c6 --- /dev/null +++ b/app/src/main/res/layout/activity_confirmation_screen.xml @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="utf-8"?> +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/activity_confirmation_screen" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:paddingBottom="@dimen/activity_vertical_margin" + android:paddingLeft="@dimen/activity_horizontal_margin" + android:paddingRight="@dimen/activity_horizontal_margin" + android:background="@color/colorPrimary" + android:paddingTop="@dimen/activity_vertical_margin" + tools:context="com.speedyapps.keepyousafe.confirmationScreen"> + + <TextView + android:text="10" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@+id/textView" + android:layout_centerHorizontal="true" + android:layout_marginTop="35dp" + android:id="@+id/countDown" + android:textSize="36sp" + android:textColor="?android:attr/textColorPrimaryInverseNoDisable" /> + + <TextView + android:text="KeepMeSafe Will Start Sending Distress Signals in -" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/textView" + android:textColor="@android:color/holo_red_dark" + android:textSize="30sp" + android:textAlignment="center" + android:textStyle="normal|bold" + android:layout_alignParentTop="true" + android:layout_alignParentLeft="true" + android:layout_alignParentStart="true" /> + + <TextView + android:text="If this was a FALSEALARM OR ACCIDENT, please ENTER THE PIN AND press CANCEL!" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerVertical="true" + android:layout_centerHorizontal="true" + android:id="@+id/textView3" + android:textSize="24sp" + android:textAlignment="center" + android:textStyle="normal|bold" + android:textColor="@android:color/holo_green_light" /> + + <EditText + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:inputType="numberPassword" + android:ems="10" + android:layout_below="@+id/textView3" + android:layout_centerHorizontal="true" + android:layout_marginTop="42dp" + android:id="@+id/editTextPIN" + android:hint="ENTER PIN" + android:textAlignment="center" + android:textStyle="normal|bold" + android:textColor="@android:color/holo_red_dark" /> + + <Button + android:text="CANCEL" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="15dp" + android:id="@+id/buttonCANCEL" + android:layout_below="@+id/editTextPIN" + android:layout_alignParentLeft="true" + android:layout_alignParentStart="true" + style="@android:style/Widget.Holo.Button" + android:onClick="onCancel" /> +</RelativeLayout> diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 1339bf63888f9447909dfc2d2fd04ddbdc5f0293..d27e1ae7d99aa486880d708d58c41d2a33bf0b7f 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -43,7 +43,6 @@ android:scaleType="fitXY" android:layout_width="350dp" android:layout_height="350dp" - android:onClick="onClick" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" /> diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 3ab3e9cbce07f7cdc941fc8ba424c05e83ed80f0..748ed0012e36fcfef497ca5ce36fc74324409842 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <resources> - <color name="colorPrimary">#3F51B5</color> - <color name="colorPrimaryDark">#303F9F</color> + <color name="colorPrimary">#3f51b5</color> + <color name="colorPrimaryDark">#0442d4</color> <color name="colorAccent">#FF4081</color> </resources>