Merge "fm: Added chinese language string resource"
diff --git a/Android.mk b/Android.mk
index a08bbc1..60620d4 100644
--- a/Android.mk
+++ b/Android.mk
@@ -1,4 +1,4 @@
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(filter $(QCOM_BOARD_PLATFORMS),$(TARGET_BOARD_PLATFORM)))
 LOCAL_PATH:= $(call my-dir)
 LOCAL_DIR_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
@@ -14,8 +14,6 @@
 
 include $(LOCAL_PATH)/jni/Android.mk
 LOCAL_PATH := $(LOCAL_DIR_PATH)
-include $(LOCAL_PATH)/fmapp/Android.mk
-LOCAL_PATH := $(LOCAL_DIR_PATH)
 include $(LOCAL_PATH)/fmapp2/Android.mk
 LOCAL_PATH := $(LOCAL_DIR_PATH)
 include $(LOCAL_PATH)/FMRecord/Android.mk
diff --git a/FMRecord/Android.mk b/FMRecord/Android.mk
index 00837f0..647b941 100644
--- a/FMRecord/Android.mk
+++ b/FMRecord/Android.mk
@@ -1,4 +1,4 @@
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(filter $(QCOM_BOARD_PLATFORMS),$(TARGET_BOARD_PLATFORM)))
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
diff --git a/FMRecord/src/com/codeaurora/fmrecording/FMRecordingService.java b/FMRecord/src/com/codeaurora/fmrecording/FMRecordingService.java
index e542512..4ca4645 100644
--- a/FMRecord/src/com/codeaurora/fmrecording/FMRecordingService.java
+++ b/FMRecord/src/com/codeaurora/fmrecording/FMRecordingService.java
@@ -92,6 +92,7 @@
     private Thread mStatusCheckThread = null;
     private int clientPid = -1;
     private String clientProcessName = "";
+    private BroadcastReceiver mSdcardUnmountReceiver = null;
 
     public void onCreate() {
 
@@ -99,6 +100,7 @@
         Log.d(TAG, "FMRecording Service onCreate");
         registerRecordingListner();
         registerShutdownListner();
+        registerStorageMediaListener();
     }
 
     public int onStartCommand(Intent intent, int flags, int startId) {
@@ -115,6 +117,7 @@
         }
         unregisterBroadCastReceiver(mFmRecordingReceiver);
         unregisterBroadCastReceiver(mFmShutdownReceiver);
+        unregisterBroadCastReceiver(mSdcardUnmountReceiver);
         super.onDestroy();
     }
 
@@ -196,6 +199,33 @@
         return true;
     }
 
+    private void registerStorageMediaListener() {
+        if (mSdcardUnmountReceiver == null) {
+            mSdcardUnmountReceiver = new BroadcastReceiver() {
+                @Override
+                public void onReceive(Context context, Intent intent) {
+                     String action = intent.getAction();
+                    if ((action.equals(Intent.ACTION_MEDIA_UNMOUNTED))
+                          || action.equals(Intent.ACTION_MEDIA_EJECT)) {
+                         Log.d(TAG, "ACTION_MEDIA_UNMOUNTED Intent received");
+                        if (mFmRecordingOn == true) {
+                             try {
+                                  stopRecord();
+                             } catch (Exception e) {
+                                  e.printStackTrace();
+                             }
+                         }
+                     }
+                 }
+             };
+             IntentFilter iFilter = new IntentFilter();
+             iFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
+             iFilter.addAction(Intent.ACTION_MEDIA_EJECT);
+             iFilter.addDataScheme("file");
+             registerReceiver(mSdcardUnmountReceiver, iFilter);
+         }
+     }
+
     private void sendRecordingStatusIntent(int status) {
         Intent intent = new Intent(ACTION_FM_RECORDING_STATUS);
         intent.putExtra("state", status);
diff --git a/fmapp/Android.mk b/fmapp/Android.mk
index 8692b8c..cb1f066 100644
--- a/fmapp/Android.mk
+++ b/fmapp/Android.mk
@@ -10,7 +10,7 @@
         src/com/codeaurora/fmradio/IFMTransmitterService.aidl \
 
 
-ifeq ($(call is-android-codename-in-list,JELLY_BEAN ICECREAM_SANDWICH HONEYCOMB),true)
+ifeq (1,$(filter 1,$(shell echo "$$(( $(PLATFORM_SDK_VERSION) >= 11 ))" )))
 LOCAL_SRC_FILES +=  $(call all-java-files-under, src/com/codeaurora/hc_utils)
 else
 LOCAL_SRC_FILES +=  $(call all-java-files-under, src/com/codeaurora/utils)
diff --git a/fmapp/src/com/codeaurora/fmradio/FMTransmitterService.java b/fmapp/src/com/codeaurora/fmradio/FMTransmitterService.java
index e599e8d..d4c953c 100644
--- a/fmapp/src/com/codeaurora/fmradio/FMTransmitterService.java
+++ b/fmapp/src/com/codeaurora/fmradio/FMTransmitterService.java
@@ -1161,6 +1161,10 @@
         public void setCurrentClientId(int clientGeneration, PendingIntent clientMediaIntent,
                 boolean clearing) {
         }
+
+        @Override
+        public void setEnabled(boolean enabled) {
+        }
    }
 
    class Metadata {
diff --git a/fmapp2/Android.mk b/fmapp2/Android.mk
index 3985572..d899d9c 100644
--- a/fmapp2/Android.mk
+++ b/fmapp2/Android.mk
@@ -4,13 +4,13 @@
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES := $(call all-java-files-under, src/com/caf/fmradio) \
-	src/com/caf/fmradio/IFMRadioServiceCallbacks.aidl \
-	src/com/caf/fmradio/IFMRadioService.aidl \
-	src/com/caf/fmradio/IFMTransmitterServiceCallbacks.aidl \
-	src/com/caf/fmradio/IFMTransmitterService.aidl \
+        src/com/caf/fmradio/IFMRadioServiceCallbacks.aidl \
+        src/com/caf/fmradio/IFMRadioService.aidl \
+        src/com/caf/fmradio/IFMTransmitterServiceCallbacks.aidl \
+        src/com/caf/fmradio/IFMTransmitterService.aidl \
 
 
-ifeq ($(call is-android-codename-in-list,JELLY_BEAN ICECREAM_SANDWICH HONEYCOMB),true)
+ifeq (1,$(filter 1,$(shell echo "$$(( $(PLATFORM_SDK_VERSION) >= 11 ))" )))
 LOCAL_SRC_FILES +=  $(call all-java-files-under, src/com/caf/hc_utils)
 else
 LOCAL_SRC_FILES +=  $(call all-java-files-under, src/com/caf/utils)
diff --git a/fmapp2/AndroidManifest.xml b/fmapp2/AndroidManifest.xml
index 57c0b23..aeb3a1c 100644
--- a/fmapp2/AndroidManifest.xml
+++ b/fmapp2/AndroidManifest.xml
@@ -48,12 +48,14 @@
     <application
         android:icon="@drawable/ic_launcher_fmradio"
         android:label="@string/app_name"
+        android:allowTaskReparenting="true"
+        android:taskAffinity="com.caf.task.fmradio"
         android:name=".FMAdapterApp">
         <activity android:icon="@drawable/ic_launcher_fmradio"
             android:name=".FMRadio"
             android:label="@string/app_name"
             android:clearTaskOnLaunch="true"
-            android:taskAffinity=""
+            android:allowTaskReparenting="true"
             android:launchMode="singleTask"
             android:excludeFromRecents="false" >
 
diff --git a/fmapp2/src/com/caf/fmradio/FMTransmitterService.java b/fmapp2/src/com/caf/fmradio/FMTransmitterService.java
index a720868..057eca5 100644
--- a/fmapp2/src/com/caf/fmradio/FMTransmitterService.java
+++ b/fmapp2/src/com/caf/fmradio/FMTransmitterService.java
@@ -1159,6 +1159,11 @@
         public void setCurrentClientId(int clientGeneration, PendingIntent clientMediaIntent,
                 boolean clearing) {
         }
+
+        @Override
+        public void setEnabled(boolean enabled) {
+        }
+
    }
 
    class Metadata {
diff --git a/jni/Android.mk b/jni/Android.mk
index 594332f..56f7da3 100644
--- a/jni/Android.mk
+++ b/jni/Android.mk
@@ -1,4 +1,4 @@
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(filter $(QCOM_BOARD_PLATFORMS),$(TARGET_BOARD_PLATFORM)))
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)