0

Android 4.1.1 用の YouWave という Android エミュレーターで簡単な小さなテストを作成しようとしています (そうだと思います)。

IntelliJ を使用して、エミュレーターで使用する APK ファイルを生成しています。私は単純に Artifacts に入り、1 つの Artifact を作成して APK ファイルを作成しました。他には何もしませんでした。

プロジェクト構造メニュー

アプリのアイデアはシンプルです。いくつかのコードが実行されたら、コードの結果を読み取り可能な小さなボックスに表示し、読み取ったら閉じます。しかし、エミュレータでアプリケーションを起動すると、「Loading 100 %」と表示され、何も起こりません。(ソフトウェアに付属の他の 2 つのアプリケーションで動作したので、別の方法で動作することはわかっています。)

コードは次のとおりです。

package com.example.DalvikTest;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.content.Context;

public class MyActivity extends Activity {

    final Context context = this;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        long time = RunTest();
        AlertDialog.Builder builder = new AlertDialog.Builder(context);
        builder.setTitle("Results");
        builder.setCancelable(true);
        String s = "Time: " + time + " ns";
        builder
                .setMessage(s)
                .setCancelable(false)
                .setPositiveButton("Yes",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        MyActivity.this.finish();
                    }
                })
                .setNegativeButton("No",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.cancel();
                    }
                });
        AlertDialog alert = builder.create();
        alert.show();
    }

    public long RunTest() {
        long timeStart = System.nanoTime();
        long sum = 0;
        int[] arr = new int[1000000];
        for(int i : arr) {
            sum += i;
        }
        long timeEnd = System.nanoTime();
        long result = timeEnd - timeStart;
        return result;
    }
}

結果のボックスが表示されるようになったのはなぜですか?

4

2 に答える 2

2

少し前に YouWave を使用していましたが、いくつかのアプリも動作しないという問題がありました。あなたの問題は、YouWave プレーヤーがサポートしていない (少なくとも古いバージョンでは動作しなかった) デバッグ可能な開発署名済み apk ファイルを使用しており、製品キーで署名されたファイルをエクスポートする必要があるという事実にある可能性があります。ウェブサイトの担当者を考慮して、独自のキーを生成できるため、実際には非常に簡単です。 /publishing/app-signing.html

于 2013-05-23T13:24:06.693 に答える