1

私はこれを私の中に持っていMain.axmlます;

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent"
                android:layout_width="fill_parent"
    >

    <Button  
        android:id="@+id/MyButton"
        android:layout_width="200dp" 
        android:layout_height="wrap_content" 
        android:text="@string/Hello"/>

    <ImageView 
        android:src="@drawable/samplebackground"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/MyButton"/>

</RelativeLayout>

それはうまくビルドされ、sampleBackground は私のプロジェクトに含まれている jpg です。

ただし、展開しようとするとエラーが発生します。

Object reference not set to an instance of an object

そして、次のような行がたくさんあります<filename unknown>

マークアップから ImageView を削除すると、アプリケーションは正常にデプロイされます。

何かご意見は?

フルスタック

------ ビルド開始: Project: MonoAndroidApplication1, Configuration: Debug Any CPU ------ MonoAndroidApplication1 -> C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\bin\Debug\MonoAndroidApplication1.dll Microsoft (R) Build Engine バージョン4.0.30319.1 [Microsoft .NET Framework、バージョン 4.0.30319.225] Copyright (C) Microsoft Corporation 2007. All rights reserved.

ビルドは 2011 年 8 月 6 日午前 8:37:40 に開始されました。ノード 1 (SignAndroidPackage ターゲット) で "C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\MonoAndroidApplication1.csproj" をプロジェクトします。_GenerateAndroidAssetsDir: 出力がないため、ターゲット "_GenerateAndroidAssetsDir" をスキップします。_ResolveMonoAndroidSdks: Android SDK を探しています..キー HKCU\SOFTWARE\Android SDK Tools\Path が見つかりません。キー HKLM\SOFTWARE\Android SDK Tools\Path found: パスには、\platform-tools (C:\Program Files\Android\android-sdk) に adb.exe が含まれています。Java SDK を探しています。キー HKLM\SOFTWARE\JavaSoft\Java Development Kit\CurrentVersion が見つかりました: 1.6。キー HKLM\SOFTWARE\JavaSoft\Java Development Kit\1.6\JavaHome が見つかりました: パスには、\bin (C:\Program Files\Java\jdk1.6.0_25) に jarsigner.exe が含まれています。MonoAndroid ツール: C: \Program Files\MSBuild\Novell\ MonoAndroid フレームワーク: C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v2.2\;C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\ Android SDK: C:\Program Files\Android\android-sdk\ Java SDK: C:\Program Files\Java\jdk1.6.0_25\ _ValidateAndroidPackageProperties: GetAndroidPackageName タスク ManifestFile: AssemblyName: MonoAndroidApplication1 PackageName: MonoAndroidApplication1.MonoAndroidApplication1 _UpdateAndroidResgen: ターゲットをスキップ " _UpdateAndroidResgen" は、すべての出力ファイルが入力ファイルに対して最新であるためです。GenerateTargetFrameworkMonikerAttribute: すべての出力ファイルが入力ファイルに関して最新であるため、ターゲット "GenerateTargetFrameworkMonikerAttribute" をスキップします。CoreCompile: ターゲットをスキップしています " \Development\MonoAndroidApplication1\MonoAndroidApplication1\bin\Debug\MonoAndroidApplication1.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v2.2\Mono.Android.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Core.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Xml.dll; C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Xml.Linq.dll I18nAssemblies: BuildDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\ ReferenceAssembliesDirectory: C: \Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v2.2\;C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\;; AndroidSdkDirectory: C:\Program Files\Android\android-sdk\ JavaSdkDirectory: C:\Program Files\Java\jdk1.6.0_25\ AssetDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\assets\ AndroidSdkPlatform: 8 MonoAndroidToolsDirectory : C:\Program Files\MSBuild\Novell\ ResourceDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\res\ ManifestTemplate: パッケージ: MonoAndroidApplication1.MonoAndroidApplication1 NativeLibrary: JavaSource: Debug: True UseSharedRuntime: True SupportedAbis: armeabi LinkMode:なし \Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\;; AndroidSdkDirectory: C:\Program Files\Android\android-sdk\ JavaSdkDirectory: C:\Program Files\Java\jdk1.6.0_25\ AssetDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\assets\ AndroidSdkPlatform: 8 MonoAndroidToolsDirectory : C:\Program Files\MSBuild\Novell\ ResourceDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\res\ ManifestTemplate: パッケージ: MonoAndroidApplication1.MonoAndroidApplication1 NativeLibrary: JavaSource: Debug: True UseSharedRuntime: True SupportedAbis: armeabi LinkMode:なし \Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\;; AndroidSdkDirectory: C:\Program Files\Android\android-sdk\ JavaSdkDirectory: C:\Program Files\Java\jdk1.6.0_25\ AssetDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\assets\ AndroidSdkPlatform: 8 MonoAndroidToolsDirectory : C:\Program Files\MSBuild\Novell\ ResourceDirectory: C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\res\ ManifestTemplate: パッケージ: MonoAndroidApplication1.MonoAndroidApplication1 NativeLibrary: JavaSource: Debug: True UseSharedRuntime: True SupportedAbis: armeabi LinkMode:なし
C:\Program Files\MSBuild\Novell\mandroid.exe -v --nosign --sdk-dir="C:\Program Files\Android\android-sdk" --builddir="C:\Development\MonoAndroidApplication1\MonoAndroidApplication1 \obj\Debug\android" --framework-dir="C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v2.2" --framework-dir="C:\Program Files\Reference Assemblies\Microsoft \Framework\MonoAndroid\v1.0" -S="C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\res" --package="MonoAndroidApplication1.MonoAndroidApplication1" --nolink --abi="armeabi" --java -sdk-dir="C:\Program Files\Java\jdk1.6.0_25" --debug --sdk-platform="8" -A="C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\obj\Debug\assets" 「C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\bin\Debug\MonoAndroidApplication1.dll" "C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v2.2\Mono.Android.dll" "C:\Program Files\Reference Assemblies \Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll" "C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Core.dll" "C:\Program Files\Reference Assemblies \Microsoft\Framework\MonoAndroid\v1.0\System.dll" "C:\Program Files\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Xml.dll" "C:\Program Files\Reference Assemblies \Microsoft\Framework\MonoAndroid\v1.0\System.Xml.Linq.dll" monodroid: エラー 1: System.NullReferenceException: オブジェクト参照がオブジェクトのインスタンスに設定されていません [C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\MonoAndroidApplication1.csproj] at MonoDroid.Utils.ProcessRocks+c__Iterator5.MoveNext () [0x00000] in :0 at Monodroid.Toolbox.InvokeCommand (IEnumerable1 commandLine) [0x00000] in <filename unknown>:0 at Monodroid.Toolbox.InvokeAapt (System.String packageName) [0x00000] in <filename unknown>:0 at Monodroid.Droidinator.CreatePackagedResources (System.Collections.Generic.List1 javaTypes) [0x00000] in :0 at Monodroid.Droidinator.CreateApk () [0x00000] in :0 at Monodroid.MainClass.Main (System.String[] argv) [0x00000] in :0 Done Building Project "C:\ Development\MonoAndroidApplication1\MonoAndroidApplication1\MonoAndroidApplication1.csproj" (SignAndroidPackage ターゲット) -- 失敗。

ビルドに失敗しました。

"C:\Development\MonoAndroidApplication1\MonoAndroidApplication1\MonoAndroidApplication1.csproj" (SignAndroidPackage ターゲット) (1) -> (_CompileAndroidPackage ターゲット) -> monodroid : エラー 1: System.NullReferenceException: オブジェクト参照がオブジェクトのインスタンスに設定されていません [C :\開発\MonoAndroidApplication1\MonoAndroidApplication1\MonoAndroidApplication1.csproj]

4

2 に答える 2

0

そのイメージ ファイルの Build Action が AndroidResource に設定されていることを確認します。Visual Studio でファイルを右クリックして [プロパティ] を選択すると、ビルド アクションを設定できます。

于 2011-06-08T17:40:52.473 に答える