首页 文章

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

提问于
浏览
9

我工作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应用?

EDIT:

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

2 回答

  • 4

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

  • 2

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

    • 将文件名更改为com.foo.bar.apk(非常确定无关紧要)

    • 右键单击ProjectName.Droid,属性 - > Android Manifest . 将包名称更改为com.foo.bar

    • 在同一个对话框中,将版本号设置为1,将版本名称设置为"Alpha 1"

    • 在Properties - > Application下,将Assembly更改为com.foo.bar

    • 在Archive Manager中,右键单击我的应用程序并将其删除 . 通过再次右键单击项目并选择存档来重新创建...

相关问题