简单的xamarin android应用程序在VS中运行但在电话上失败

时间:2018-02-07 19:17:00

标签: c# android xamarin mobile visual-studio-2017

我有三星A8 手机。 Android 版本 - 7.1.1

尝试在 Visual Studio 2017上使用 Xamarin 创建简单的应用程序。在项目属性中 - >应用程序我已设置“使用最新的Paltform(Android 7.1(牛轧糖))”。

这是我的源代码。

Main.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:text="text1"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textLizaMath" />
    <Button
        android:text="Click"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btnLizaMath" />
</LinearLayout>

BtnClick.cs:

namespace Core
{
    public static class BtnClick
    {
        public static string GenerateText(string text)
        {
            if (text.Equals("text1")) return "text2";
            return "text1";
        }

    }
}

MainActivity.cs

using Android.App;
using Android.Widget;
using Android.OS;

namespace Mobile
{
    [Activity(Label = "LizaN", MainLauncher = true)]
    public class MainActivity : Activity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.Main);
            var btn = FindViewById<Button>(Resource.Id.btnLizaMath);
            var lizaText = FindViewById<TextView>(Resource.Id.textLizaMath);
            btn.Click += (sender, e) =>
            {
                var tmpText = Core.BtnClick.GenerateText(lizaText.Text);

                lizaText.Text = tmpText;
            };

        }
    }
}

当我在 VS 中启动它时,它按预期工作。然后我转到 bin / debug 文件夹并将 Mobile.Mobile.apk Mobile.Mobile-Signed.apk 复制到我的手机。 Mobile.Mobile.apk 根本没有安装说它已损坏。我能够安装 Mobile.Mobile-Signed.apk ,但是当我尝试运行它时崩溃没有任何有意义的错误消息。

我该怎么办?

更新:

我尝试过“存档”然后失败并显示错误消息:“已启用共享单元运行时”,我转到项目属性 - &gt; Android选项并禁用“使用共享运行时”。之后我就能归档了。应用程序的大小增加了10倍。我已经复制了所有文件(不仅是.apk),但是当我尝试安装它时说“包已损坏”(我不知道确切的英文错误消息文本,但它有点像那)

1 个答案:

答案 0 :(得分:0)

尝试恢复您的nuget包。更新xamarin.forms nuget。你可以分享你的示例项目的链接