2015年9月8日 星期二

在bsp下,編譯自已的app

(放在packages/apps/)

樹狀結構如下:
( 先用android studio寫好後,再搬移成下面的結構的 XD
但有些檔案是要自已新增的,才可以編譯 )
├── AndroidManifest.xml
├── Android.mk
├── jni
│   ├── Android.mk
│   ├── com_update_NativeUpdate.h
│   └── update.c
├── libs (jar檔要放在此)
│   └── base_intermediates.jar
├── res
│   ├── drawable
│   ├── layout
│   │   └── activity_main.xml
│   ├── menu
│   │   └── menu_main.xml
│   ├── mipmap-hdpi
│   │   └── ic_launcher.png
│   ├── mipmap-mdpi
│   │   └── ic_launcher.png
│   ├── mipmap-xhdpi
│   │   └── ic_launcher.png
│   ├── mipmap-xxhdpi
│   │   └── ic_launcher.png
│   ├── values
│   │   ├── dimens.xml
│   │   ├── strings.xml
│   │   └── styles.xml
│   └── values-w820dp
│       └── dimens.xml
└── src
    └── com
        └── update
            ├── MainActivity.java
            ├── NativeUpdate.java
            └── UpdatePage.java
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.update">

<!--    android:versionCode="1"
    android:versionName="1.0" > 

    <uses-sdk
        android:minSdkVersion="17"
        android:targetSdkVersion="22" />
-->

    <uses-permission android:name="android.permission.REBOOT" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:sharedUserId="android.uid.system"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.update.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.update.UpdatePage" />
    </application>
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src)
#LOCAL_SRC_FILES += jni/update.c

LOCAL_CERTIFICATE :=platform

#LOCAL_C_INCLUDES += ./src/main/jni
#LOCAL_C_INCLUDES += ./src/release/jni
#LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog

LOCAL_PACKAGE_NAME := Update

LOCAL_JNI_SHARED_LIBRARIES := libupdate
LOCAL_REQUIRED_MODULES := libupdate
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v4 LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-gridlayout LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13

#LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libarity:classes.jar

#LOCAL_SDK_VERSION := current

include $(BUILD_PACKAGE)
include $(LOCAL_PATH)/jni/Android.mk
#include $(BUILD_SHARED_LIBRARY)
#include $(BUILD_MULTI_PREBUILT)
Android.mk (jni用的)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := Update
LOCAL_LDLIBS := \
    -llog \
    -lz \
    -lm \
LOCAL_SHARED_LIBRARIES := liblog
LOCAL_SRC_FILES := \
    update.c \

LOCAL_C_INCLUDES += jni 
LOCAL_C_INCLUDES += jni 

include $(BUILD_SHARED_LIBRARY)

沒有留言:

張貼留言