6

Android 4.0 のアニメーションが非常に遅く、不足しています。ハードウェア アクセラレーションを有効にしたいので、このページに書かれていることを実行しようとしましたが、うまくいきませんでした。

ここで私のマニフェストを見ることができます:

<?xml version="1.0" encoding="UTF-8"?>
<manifest android:versionCode="1" android:versionName="1.0"
    package="com.jws.battleship" xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15"/>
    <uses-permission android:name="android.permission.BLUETOOTH"/>
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
    <application 
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" 
        android:theme="@android:style/Theme.Black.NoTitleBar"
        android:hardwareAccelerated="true">
        <activity 
            android:label="@string/app_name" 
            android:name=".HomeActivity"
            android:hardwareAccelerated="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:name=".UserPreferences"/>
        <activity android:name=".BattleActivity" android:screenOrientation="landscape"/>
        <activity android:name=".HighScoreActivity"/>
        <activity android:name=".StoreActivity"/>
        <activity android:name=".JoinBattle"/>
        <activity android:name=".CreateBattleActivity"/>
        <activity android:name=".FriendList"/>
        <activity android:name=".FriendListActivity"/>
        <activity android:name=".SelectNetworkActivity"/>
        <activity android:name=".BluetoothDevicesListActivity"/>
        <activity android:name=".NetworkFactoryActivity"/>
    </application>
</manifest>

次に、次のように onCreate() でハードウェア アクセラレーションが有効になっているかどうかをテストします。

ListView list = (ListView)findViewById(R.id.home_list_active_games);
Boolean test = list.isHardwareAccelerated();

しかし、それは常にfalseを返します!? ある種の許可を追加する必要がありますか、それとも何が問題なのですか?

ブラジル

4

2 に答える 2

5

上記のコードは問題ないようです。同じ問題が HoneyComb に投稿されています isHardwareAccelerated() は常に false を返します。それでも Android 3.0 ハードウェア アクセラレーションは書き込みます

より細かい制御が必要な場合は、実行時に特定のウィンドウに対してハードウェア アクセラレーションを有効にすることができます。

    getWindow().setFlags(
    WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
    WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
于 2012-08-13T12:14:57.160 に答える
1

これをに変更

<uses-sdk android:minSdkVersion="11" android:targetSdkVersion="15"/>

ハードウェア アクセラレーションを使用するには、minSdkVersion 11 以降が必要です。

于 2014-02-14T14:31:18.590 に答える