Ich möchte einige Funktionen in Browser-App hinzufügen, indem Sie eine Aktivität aus einer anderen Android-Anwendung starten. Es gibt mir package does not exist
während ich das Hauptprojekt mache. Beachten Sie, dass ich die AndroidLib sehen gebaut erfolgreich in eine out/target/product/generic/data/app/AndroidLib.apk
Hinzufügen eines Android-Projekts als Bibliothek in AOSP App
Hier sind zwei android.mk Dateien: AndroidLib (eine normale Android App)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_STATIC_JAVA_LIBRARIES := \
google-ps \
android-support-v4 \
LOCAL_SRC_FILES := \
$(call all-java-files-under, src) \
LOCAL_MODULE := AndroidLib
LOCAL_PACKAGE_NAME := AndroidLib
LOCAL_MODULE_TAGS := tests
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := google-ps:libs/google-play-services.jar
include $(BUILD_PACKAGE)
# additionally, build tests in sub-folders in a separate .apk
include $(call all-makefiles-under,$(LOCAL_PATH))
Browser App
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_STATIC_JAVA_LIBRARIES := \
android-common \
guava \
android-support-v13 \
android-support-v4 \
LOCAL_SRC_FILES := \
$(call all-java-files-under, src) \
src/com/android/browser/EventLogTags.logtags
LOCAL_PACKAGE_NAME := Browser
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
LOCAL_EMMA_COVERAGE_FILTER := *,-com.android.common.*
# We need the sound recorder for the Media Capture API.
LOCAL_REQUIRED_MODULES := SoundRecorder, AndroidLib
include $(BUILD_PACKAGE)
# additionally, build tests in sub-folders in a separate .apk
include $(call all-makefiles-under,$(LOCAL_PATH))
ich dann tun:
make -j Browser
Es gibt mir:
packages/apps/Browser/src/com/android/browser/BrowserActivity.java:36: package com.om.AndroidLib does not exist
import com.om.AndroidLib.MainActivity;
Haben Sie alle Aktivitäten der Bibliotheksprojekt in den Hauptprojekt erklärt Manifest mit dort Paket name.And auch die pac überprüfen Kage-Name im Manifest Ihres Bibliotheksprojektes. – Meenal
@MeenalSharma: Ich denke, es sollte das gleiche sein wie wenn Sie Eclipse verwenden und A als Bibliothek definieren, dann fügen Sie die Bibliothek zu Hauptprojekt hinzu. Muss ich die Erklärung von A Lib in das Hauptprojekt kopieren? –
Ja, Sie müssen kopieren, weil Sie Ihr Hauptprojekt und nicht die Bibliothek ausführen, und wenn die Aktivität des Bibliotheksprojekts aufgerufen wird, wird es vom Hauptprojekt verarbeitet. – Meenal