microg / android_frameworks_mapsv1

MapsV1: A system library, providing the functionality of Google Maps API v1
Apache License 2.0
104 stars 28 forks source link

Error when compiling in cyanogen AOSP #2

Closed chr4 closed 10 years ago

chr4 commented 10 years ago

After adding the following lines to my manifest.xml

<project path="frameworks/mapsv1" name="microg/android_frameworks_mapsv1" revision="master" />
<project path="external/slf4j" name="microg/android_external_slf4j" revision="master" />
<project path="external/osmdroid" name="microg/android_external_osmdroid" revision="master" />

And adding this to PRODUCT_PACKAGES

PRODUCT_PACKAGES += \
    com.google.android.maps \
    com.google.android.maps.xml

I get the following error

make: *** No rule to make target `out/target/common/obj/JAVA_LIBRARIES/osmdroid-android_intermediates/javalib.jar', needed by `out/target/common/obj/JAVA_LIBRARIES/com.google.android.maps_intermediates/classes-full-debug.jar'.  Stop.

Any idea what I'm missing?

rtreffer commented 10 years ago

Are you sure you're using the right externals? The manifest.xml looks strange. Here is what I am using

<remote name="microg" fetch="https://github.com/microg" />
  <project path="external/osmdroid" name="android_external_osmdroid" remote="microg" revision="4.1-with-Android.mk" />
<project path="external/slfj" name="android_external_slf4j" remote="microg" revision="1.7.6-with-Android.mk" />
<project path="frameworks/mapsv1" name="android_frameworks_mapsv1" remote="microg" revision="master" />

I had no problems with an Omni based source tree....

chr4 commented 10 years ago

The default remote is "github.com", so it should be the same, but the revisions for the libraries.

rtreffer commented 10 years ago

https://github.com/microg/android_external_slf4j doesn't have an Android.mk on master, which might explain your problem ;-)

chr4 commented 10 years ago

Yeah :) let me try with your revisions...

rtreffer commented 10 years ago

Btw, here is my full manifest, it bundles most of microg and some other stuff... Just in case you're interrested: https://github.com/gfreed/gfreed/blob/android-4.4/default.xml (it's mainly AOSP with selected CM / Omni bits)

chr4 commented 10 years ago

Cool! Building UnifiedNlp worked out of the box (incl. the LocalGSMLocationProvider). But if I understand correctly, this is not an in-place replacement for GoogleNetworkLocation, but requires the app programmers to use another API right? So I cannot use UnifiedNlp in e.g. GoogleMaps?

mar-v-in commented 10 years ago

UnifiedNlp is a provider for Android NetworkLocation API which is used by most apps. There is a newer, incompatible, proprietary API for that, but it's only used rarely as it does not provide additional features and binds software to Google Android systems. Unfortunately Google Maps uses that API in it's latest version - only way to come around this is to use an older version (you have to find out which one works) or wait for GmsCore to add support for it (could be a month or two)