使用Android Transfuse设置Maps v2

使用Android Transfuse设置Maps v2,android,google-maps,android-manifest,transfuse,Android,Google Maps,Android Manifest,Transfuse,我在尝试如何在使用Transfuse框架的android应用程序上设置地图时遇到了一个小问题 由于我在示例和文档中没有看到关于地图的任何内容,因此我尝试遵循本教程: 不幸的是,当我添加元数据时: @MetaData(name = "com.google.android.maps.v2.API_KEY", value = "my_key") 我得到:错误:在包“android”中找不到属性“resourceSpecification”的资源标识符 查看我的清单(转换自动生成),我看到它创建了“r

我在尝试如何在使用Transfuse框架的android应用程序上设置地图时遇到了一个小问题

由于我在示例和文档中没有看到关于地图的任何内容,因此我尝试遵循本教程:

不幸的是,当我添加元数据时:

@MetaData(name = "com.google.android.maps.v2.API_KEY", value = "my_key")
我得到:错误:在包“android”中找不到属性“resourceSpecification”的资源标识符

查看我的清单(转换自动生成),我看到它创建了“resourceSpecification”属性,我认为它应该被称为“resource”,但我仍然没有定义任何资源,所以不应该添加它,对吗

<meta-data t:tag="+,n,s,v" android:name="com.google.android.maps.v2.API_KEY" android:resourceSpecification="" android:value="my_key"/>

我承认,当涉及到将常规清单设置“转换”为输血方式时,我有点不知所措,另一个例子是:

<permission
    android:name="com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />
<uses-permission android:name="com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

我该如何设置?(我想这是另一个问题的主题,但仍然与地图相关)


任何帮助都将不胜感激:)谢谢

这是0.2.3之前的一个bug

而言,您应该能够在
@TransfuseModule
配置类上使用
@Permission
@usesmission
注释:

@TransfuseModule
@Permission(name="com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE", protectionLevel=ProtectionLevel.SIGNATURE)
@UsesPermission({
        "com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE",
        Manifest.permission.INTERNET,
        Manifest.permission.WRITE_EXTERNAL_STORAGE})
public class Module{}
产生以下结果:

<permission
    android:name="com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />
<uses-permission android:name="com.vogella.android.locationapi.maps.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


看起来这是一个bug。resourceSpecification不仅命名错误(最近是否发生了更改?),而且当它为空时会添加到清单中。我已经发布了一个修复程序,并向maven central发布了一个bug修复程序。更新到版本0.2.3-SNAPSHOT,然后再试一次。当您确认此选项后,我将推出0.2.3()。如果它仍然无法生成,您可能必须删除标记才能将其重新生成。谢谢!由于某种原因,我无法从任何地方提取快照版本,它应该显示在这里吗?您可能必须添加maven中央快照存储库:。这是输血快照:明白了!所以现在当我运行maven时,我得到:[ERROR]无法在我的android项目上执行目标org.apache.maven.plugins:maven编译器plugin:3.1:compile(默认编译):致命错误编译:java.lang.NoClassDefFoundError:org/androidtransfuse/util/Namer:org.androidtransfuse.util.Namer->[Help 1]您是否将android api版本更新为相同的0.2.3-SNAPSHOT版本?为了使用GMAPSv2,我需要定义一个uses功能标签。i、 例如,如何才能做到这一点?