diff --git a/AndroidManifest.xml b/AndroidManifest.xml
new file mode 100644
index 0000000..3f7428b
--- /dev/null
+++ b/AndroidManifest.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Sexy Personal Assistant.iml b/Sexy Personal Assistant.iml
new file mode 100644
index 0000000..08a9591
--- /dev/null
+++ b/Sexy Personal Assistant.iml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ant.properties b/ant.properties
new file mode 100644
index 0000000..b0971e8
--- /dev/null
+++ b/ant.properties
@@ -0,0 +1,17 @@
+# This file is used to override default values used by the Ant build system.
+#
+# This file must be checked into Version Control Systems, as it is
+# integral to the build system of your project.
+
+# This file is only used by the Ant script.
+
+# You can use this to override default values such as
+# 'source.dir' for the location of your java source folder and
+# 'out.dir' for the location of your output folder.
+
+# You can also use it define how the release builds are signed by declaring
+# the following properties:
+# 'key.store' for the location of your keystore and
+# 'key.alias' for the name of the key to use.
+# The password will be asked during the build when you use the 'release' target.
+
diff --git a/assets/fonts/AdventPro-Medium.ttf b/assets/fonts/AdventPro-Medium.ttf
new file mode 100644
index 0000000..68d0b29
Binary files /dev/null and b/assets/fonts/AdventPro-Medium.ttf differ
diff --git a/assets/fonts/Monda-Regular.ttf b/assets/fonts/Monda-Regular.ttf
new file mode 100644
index 0000000..c685632
Binary files /dev/null and b/assets/fonts/Monda-Regular.ttf differ
diff --git a/assets/fonts/Prata-Regular.ttf b/assets/fonts/Prata-Regular.ttf
new file mode 100644
index 0000000..cd9dd03
Binary files /dev/null and b/assets/fonts/Prata-Regular.ttf differ
diff --git a/assets/fonts/SourceSerifPro-Regular.ttf b/assets/fonts/SourceSerifPro-Regular.ttf
new file mode 100644
index 0000000..e985b61
Binary files /dev/null and b/assets/fonts/SourceSerifPro-Regular.ttf differ
diff --git a/assets/fonts/always forever.ttf b/assets/fonts/always forever.ttf
new file mode 100644
index 0000000..f9c5533
Binary files /dev/null and b/assets/fonts/always forever.ttf differ
diff --git a/build.xml b/build.xml
new file mode 100644
index 0000000..0293828
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/gen/com/sexy/sexypa/BuildConfig.java b/gen/com/sexy/sexypa/BuildConfig.java
new file mode 100644
index 0000000..7913e2d
--- /dev/null
+++ b/gen/com/sexy/sexypa/BuildConfig.java
@@ -0,0 +1,8 @@
+/*___Generated_by_IDEA___*/
+
+package com.sexy.sexypa;
+
+/* This stub is only used by the IDE. It is NOT the BuildConfig class actually packed into the APK */
+public final class BuildConfig {
+ public final static boolean DEBUG = Boolean.parseBoolean(null);
+}
\ No newline at end of file
diff --git a/gen/com/sexy/sexypa/Manifest.java b/gen/com/sexy/sexypa/Manifest.java
new file mode 100644
index 0000000..d1a311b
--- /dev/null
+++ b/gen/com/sexy/sexypa/Manifest.java
@@ -0,0 +1,7 @@
+/*___Generated_by_IDEA___*/
+
+package com.sexy.sexypa;
+
+/* This stub is only used by the IDE. It is NOT the Manifest class actually packed into the APK */
+public final class Manifest {
+}
\ No newline at end of file
diff --git a/gen/com/sexy/sexypa/R.java b/gen/com/sexy/sexypa/R.java
new file mode 100644
index 0000000..673bdde
--- /dev/null
+++ b/gen/com/sexy/sexypa/R.java
@@ -0,0 +1,7 @@
+/*___Generated_by_IDEA___*/
+
+package com.sexy.sexypa;
+
+/* This stub is only used by the IDE. It is NOT the R class actually packed into the APK */
+public final class R {
+}
\ No newline at end of file
diff --git a/local.properties b/local.properties
new file mode 100644
index 0000000..555c755
--- /dev/null
+++ b/local.properties
@@ -0,0 +1,10 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must *NOT* be checked into Version Control Systems,
+# as it contains information specific to your local configuration.
+
+# location of the SDK. This is only used by Ant
+# For customization when using a Version Control System, please read the
+# header note.
+sdk.dir=/home/master/android-sdk
diff --git a/out/production/Sexy Personal Assistant/Sexy Personal Assistant.apk b/out/production/Sexy Personal Assistant/Sexy Personal Assistant.apk
new file mode 100644
index 0000000..1a66d2e
Binary files /dev/null and b/out/production/Sexy Personal Assistant/Sexy Personal Assistant.apk differ
diff --git a/out/production/Sexy Personal Assistant/Sexy Personal Assistant.unaligned.apk b/out/production/Sexy Personal Assistant/Sexy Personal Assistant.unaligned.apk
new file mode 100644
index 0000000..7686907
Binary files /dev/null and b/out/production/Sexy Personal Assistant/Sexy Personal Assistant.unaligned.apk differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/BuildConfig.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/BuildConfig.class
new file mode 100644
index 0000000..e699c41
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/BuildConfig.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$array.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$array.class
new file mode 100644
index 0000000..ef10785
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$array.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$attr.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$attr.class
new file mode 100644
index 0000000..27d69ad
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$attr.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$drawable.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$drawable.class
new file mode 100644
index 0000000..de36bdd
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$drawable.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$id.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$id.class
new file mode 100644
index 0000000..8e9ba82
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$id.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$layout.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$layout.class
new file mode 100644
index 0000000..778a2e4
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$layout.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$string.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$string.class
new file mode 100644
index 0000000..05555ff
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R$string.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/R.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R.class
new file mode 100644
index 0000000..32d1af0
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/R.class differ
diff --git a/out/production/Sexy Personal Assistant/com/sexy/sexypa/SexyPAActivity.class b/out/production/Sexy Personal Assistant/com/sexy/sexypa/SexyPAActivity.class
new file mode 100644
index 0000000..039d50e
Binary files /dev/null and b/out/production/Sexy Personal Assistant/com/sexy/sexypa/SexyPAActivity.class differ
diff --git a/proguard-project.txt b/proguard-project.txt
new file mode 100644
index 0000000..f2fe155
--- /dev/null
+++ b/proguard-project.txt
@@ -0,0 +1,20 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
diff --git a/project.properties b/project.properties
new file mode 100644
index 0000000..af7e34d
--- /dev/null
+++ b/project.properties
@@ -0,0 +1,14 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system edit
+# "ant.properties", and override values to adapt the script to your
+# project structure.
+#
+# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
+#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
+
+# Project target.
+target=Google Inc.:Google APIs:18
diff --git a/res/drawable-hdpi/background_repeat.xml b/res/drawable-hdpi/background_repeat.xml
new file mode 100644
index 0000000..33304d8
--- /dev/null
+++ b/res/drawable-hdpi/background_repeat.xml
@@ -0,0 +1,7 @@
+
+
+
\ No newline at end of file
diff --git a/res/drawable-hdpi/denim.png b/res/drawable-hdpi/denim.png
new file mode 100644
index 0000000..3b0bb7e
Binary files /dev/null and b/res/drawable-hdpi/denim.png differ
diff --git a/res/drawable-hdpi/gun_metal.png b/res/drawable-hdpi/gun_metal.png
new file mode 100644
index 0000000..5a3880a
Binary files /dev/null and b/res/drawable-hdpi/gun_metal.png differ
diff --git a/res/drawable-hdpi/ic_launcher.png b/res/drawable-hdpi/ic_launcher.png
new file mode 100644
index 0000000..96a442e
Binary files /dev/null and b/res/drawable-hdpi/ic_launcher.png differ
diff --git a/res/drawable-hdpi/read_audio.png b/res/drawable-hdpi/read_audio.png
new file mode 100644
index 0000000..8efe444
Binary files /dev/null and b/res/drawable-hdpi/read_audio.png differ
diff --git a/res/drawable-hdpi/speak_audio.png b/res/drawable-hdpi/speak_audio.png
new file mode 100644
index 0000000..b314036
Binary files /dev/null and b/res/drawable-hdpi/speak_audio.png differ
diff --git a/res/drawable-hdpi/tiled.png b/res/drawable-hdpi/tiled.png
new file mode 100644
index 0000000..1ccea5a
Binary files /dev/null and b/res/drawable-hdpi/tiled.png differ
diff --git a/res/drawable-ldpi/ic_launcher.png b/res/drawable-ldpi/ic_launcher.png
new file mode 100644
index 0000000..9923872
Binary files /dev/null and b/res/drawable-ldpi/ic_launcher.png differ
diff --git a/res/drawable-mdpi/ic_launcher.png b/res/drawable-mdpi/ic_launcher.png
new file mode 100644
index 0000000..359047d
Binary files /dev/null and b/res/drawable-mdpi/ic_launcher.png differ
diff --git a/res/drawable-xhdpi/ic_launcher.png b/res/drawable-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..71c6d76
Binary files /dev/null and b/res/drawable-xhdpi/ic_launcher.png differ
diff --git a/res/layout/sexy_pa.xml b/res/layout/sexy_pa.xml
new file mode 100644
index 0000000..296b950
--- /dev/null
+++ b/res/layout/sexy_pa.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
new file mode 100644
index 0000000..d9591e7
--- /dev/null
+++ b/res/values/strings.xml
@@ -0,0 +1,9 @@
+
+ SPA
+
+ Welcome To Sexy Personal Assistant
+
+
+ LISTEN
+
+
\ No newline at end of file
diff --git a/src/com/sexy/sexypa/SexyPAActivity.java b/src/com/sexy/sexypa/SexyPAActivity.java
new file mode 100644
index 0000000..ee538d1
--- /dev/null
+++ b/src/com/sexy/sexypa/SexyPAActivity.java
@@ -0,0 +1,161 @@
+package com.sexy.sexypa;
+
+import android.app.Activity;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Typeface;
+import android.os.Bundle;
+import android.os.Environment;
+import android.speech.RecognizerIntent;
+import android.speech.tts.TextToSpeech;
+import android.view.View;
+import android.widget.EditText;
+import android.widget.TextView;
+import android.widget.Toast;
+
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Locale;
+import java.util.logging.Logger;
+
+public class SexyPAActivity extends Activity implements View.OnClickListener, TextToSpeech.OnInitListener {
+
+ protected static final int REQUEST_OK = 1;
+ private TextToSpeech tts;
+ private String spoken = "";
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.sexy_pa);
+ findViewById(R.id.speak).setOnClickListener(this);
+
+ tts = new TextToSpeech(this, this);
+ findViewById(R.id.play).setOnClickListener(this);
+ //Typeface myFont = Typeface.createFromAsset(getAssets(), "fonts/Prata-Regular.ttf");
+ Typeface myFont = Typeface.createFromAsset(getAssets(), "fonts/AdventPro-Medium.ttf");
+
+ EditText spokenWord = (EditText)findViewById(R.id.editText1);
+ spokenWord.setTypeface(myFont);
+
+ createBookFile();
+ }
+
+ @Override
+ public void onClick(View v)
+ {
+ switch (v.getId())
+ {
+ case R.id.speak:
+ Intent i = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
+ i.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, "en-US");
+ try
+ {
+ startActivityForResult(i, REQUEST_OK);
+ } catch (Exception e)
+ {
+ Toast.makeText(this, "Error initializing speech to text engine.", Toast.LENGTH_LONG).show();
+ }
+ break;
+ case R.id.play:
+ if (tts!=null)
+ {
+ String text = ((EditText)findViewById(R.id.editText1)).getText().toString();
+ if(text != null && text.equalsIgnoreCase("hello"))
+ {
+ if (!tts.isSpeaking())
+ {
+ tts.speak("Hello Scott, how was your night?", TextToSpeech.QUEUE_FLUSH, null);
+ }
+
+ }else if(text != null && text.equalsIgnoreCase("good"))
+ {
+ if(!tts.isSpeaking())
+ {
+ tts.speak("Cool, it is nice to see you today, man.", TextToSpeech.QUEUE_FLUSH, null);
+ }
+ }
+ else{
+ if(!tts.isSpeaking())
+ {
+ tts.speak("What? What? What? What?", TextToSpeech.QUEUE_FLUSH, null);
+ }
+ }
+
+ }
+ }
+
+ }
+
+ @Override
+ protected void onDestroy()
+ {
+ if (tts!=null)
+ {
+ tts.stop();
+ tts.shutdown();
+ }
+ super.onDestroy();
+ }
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data)
+ {
+ super.onActivityResult(requestCode, resultCode, data);
+ if (requestCode==REQUEST_OK && resultCode==RESULT_OK)
+ {
+ ArrayList thingsYouSaid = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
+ spoken = thingsYouSaid.get(0);
+ ((TextView)findViewById(R.id.editText1)).setText(spoken);
+ }
+ }
+
+
+ @Override
+ public void onInit(int code)
+ {
+ if (code == TextToSpeech.SUCCESS)
+ {
+ tts.setLanguage(Locale.getDefault());
+
+ } else
+ {
+ tts = null;
+ Toast.makeText(this, "Failed to initialize TTS engine.",
+ Toast.LENGTH_SHORT).show();
+ }
+ }
+
+ public void createBookFile()
+ {
+ File folder = new File(Environment.getExternalStorageDirectory() + "/draft");
+ boolean success = true;
+ if (!folder.exists()) {
+ success = folder.mkdir();
+ }
+ if (success) {
+ writeToFile("Some Value", "book.txt");
+ } else {
+ // Do something else on failure
+ }
+ }
+
+ public void writeToFile(String text, String fileName)
+ {
+ Context context = getBaseContext();
+ try {
+ FileWriter out = new FileWriter(new File(context.getFilesDir(), fileName));
+ out.write(text);
+ out.close();
+ } catch (IOException e) {
+
+ }
+ }
+
+
+
+
+}