如何设置Xamarin.Android APK的包名称为Google Play提交

时间:2014-01-20 15:17:26

标签: google-play xamarin.android xamarin

我在8个月的工作后完成了我的应用,并且我正在尝试提交到Google Play。

我正确签名并对齐APK并将APK上传到Google Play。然后我收到以下消息:

  

上传失败您的APK包名称必须采用以下格式“com.example.myapp”。它可能包含字母(a-z),数字和下划线(_)。它必须以小写字符开头。

以下是AndroidManifest.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"     android:installLocation="auto" package="com.vrocket.launcher" android:versionName="1.30.637" android:versionCode="1">
    <uses-sdk android:targetSdkVersion="14" />
    <application android:hardwareAccelerated="true" android:label="launchpad">
        <provider android:name="com.vrocket.launcher.LocalFileContentProvider" android:authorities="com.vrocket.launcher" />
    </application>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
</manifest>

据我所知,我在此指定的套餐名称符合Google Play提交的要求。自从我启动项目以来,我确实在Android.Manifest中更改了我的包名,但我认为这是非常正常的做法。

是否有人在向Google Play提交Xamarin.Android应用程序时遇到类似问题?

修改

我已经发现APK正在使用旧包名VRocket.VRocket进行编译。 我使用Android SDK中的aapt工具发现了这一点。 为什么不使用AndroidManifest.xml中指定的包名称构建?

2 个答案:

答案 0 :(得分:4)

Visual Studio中的属性窗口(假设您在此处编写)有几个可以更改的设置。这些在编译时会覆盖清单。也许这就是你流浪的名字来自哪里?您在代码中的类文件中放置的属性也是如此,Xamarin在编译时重写了所有清单。如果您在解决方案选项卡中显示隐藏文件并转到    OBJ \发布\机器人 此目录具有为您的应用生成的清单。也许它会有所启发。

答案 1 :(得分:2)

我正在使用DevStudio并做了以下所有事情,其中​​最后一个完成了工作,Play商店接受了我的构建。我非常确定#2和#5是必需的,也许是所有这些,但无论如何我认为这应该可以帮助处于类似情况的人们:

  1. 将文件名更改为com.foo.bar.apk(非常确定这不是 物质)
  2. 右键单击ProjectName.Droid,属性 - &gt; Android Manifest。将包名称更改为com.foo.bar
  3. 在同一个对话框中,将版本号设置为1,将版本名称设置为&#34; Alpha 1&#34;
  4. 在“属性” - >“应用程序”下,将“程序集”更改为“com.foo.bar”
  5. 在存档管理器中,右键单击我的应用并删除它。通过再次右键单击项目并选择重新创建 存档...