diff --git a/generate-packages.sh b/generate-packages.sh
index 070dfd0..4857dea 100755
--- a/generate-packages.sh
+++ b/generate-packages.sh
@@ -43,6 +43,14 @@
 
   TO_EXTRACT=`sed -n -e '/'"  $COMPANY"'/,/;;/ p' $EXTRACT_LIST_FILENAME | tail -n+3 | head -n-2 | sed -e 's/\\\//g'`
 
+  # Check if TO_EXTRACT list has any APK files
+  if [[ ${TO_EXTRACT} == *.apk* ]]
+  then
+    APK_MAKEFILE=${FILEDIR}/Android.mk
+    echo "LOCAL_PATH := \$(call my-dir)" > ${APK_MAKEFILE}
+    echo "" >> ${APK_MAKEFILE}
+  fi
+
   echo \ \ Extracting files from OTA package
   for ONE_FILE in $TO_EXTRACT
   do
@@ -58,6 +66,25 @@
       FILEDIR_NEW=$FILEDIR
     fi
 
+    # apk makefile
+    if [[ ${ONE_FILE} == *.apk ]]
+    then
+      TMP_ONE_FILE_NAME=$(basename ${ONE_FILE} | sed 's/.apk//g')
+
+      echo "include \$(CLEAR_VARS)" >> ${APK_MAKEFILE}
+
+      echo "LOCAL_MODULE_SUFFIX := \$(COMMON_ANDROID_PACKAGE_SUFFIX)" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE := ${TMP_ONE_FILE_NAME}" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_TAGS := optional" >> ${APK_MAKEFILE}
+      echo "LOCAL_BUILT_MODULE_STEM := package.apk" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_OWNER := ${COMPANY}" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_CLASS := APPS" >> ${APK_MAKEFILE}
+      echo "LOCAL_SRC_FILES := \$(LOCAL_MODULE).apk" >> ${APK_MAKEFILE}
+      echo "LOCAL_CERTIFICATE := PRESIGNED" >> ${APK_MAKEFILE}
+      echo "include \$(BUILD_PREBUILT)" >> ${APK_MAKEFILE}
+      echo "" >> ${APK_MAKEFILE}
+    fi
+
     echo \ \ \ \ Extracting $ONE_FILE
     unzip -j -o $ZIP $ONE_FILE -d $FILEDIR_NEW> /dev/null || echo \ \ \ \ Error extracting $ONE_FILE
     if test ${ONE_FILE,,} = system/vendor/bin/gpsd -o ${ONE_FILE,,} = system/vendor/bin/pvrsrvinit -o ${ONE_FILE,,} = system/bin/fRom
