2

編集:問題は解決しました:App.swfはLZMAを使用して圧縮されましたが、それは間違っていました。SWFファイルは純粋である必要があります。

クロスプラットフォームのAIRアプリケーションで作業していますが、継続的インテグレーションマシン(windows)でパッケージを実行しているが、ローカルコンピューター( WindowsとMac)はすべて正常に動作します。これが私のアプリケーションXML記述子ファイルのコードです。

<?xml version="1.0" encoding="utf-8" ?>
<application xmlns="http://ns.adobe.com/air/application/3.6">
    <id>com.test.App</id>
    <filename>App</filename>
    <name>App</name>
    <versionNumber>0.0.0</versionNumber>
    <initialWindow>
        <content>App.swf</content>
        <visible>true</visible>
        <aspectRatio>landscape</aspectRatio>
        <autoOrients>false</autoOrients>
        <fullScreen>true</fullScreen>
        <renderMode>direct</renderMode>
    </initialWindow>
    <iPhone>
        <InfoAdditions>
            <![CDATA[
            <key>UIDeviceFamily</key>
            <array>
                <!-- iPhone and iPod touch devices -->
                <string>1</string>
                <!-- iPad devices -->
                <string>2</string>
            </array>
            <!--<key>UIStatusBarStyle</key>-->
            <!--<string>UIStatusBarStyleBlackOpaque</string>-->
            <!--<key>UIRequiresPersistentWiFi</key>-->
            <!--<string>YES</string>-->
            ]]>
        </InfoAdditions>
        <requestedDisplayResolution>high</requestedDisplayResolution>
    </iPhone>
    <android>
        <manifestAdditions>
            <![CDATA[
            <manifest android:installLocation="auto">
                <uses-permission android:name="android.permission.INTERNET"/>
                <!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>-->
                <!--<uses-permission android:name="android.permission.READ_PHONE_STATE"/>-->
                <!--<uses-permission android:name="android.permission.VIBRATE"/>-->
                <!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>-->
                <!--<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>-->
                <!--<uses-permission android:name="android.permission.WAKE_LOCK"/>-->
                <!--<uses-permission android:name="android.permission.CAMERA"/>-->
                <!--<uses-permission android:name="android.permission.RECORD_AUDIO"/>-->
                <!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>-->
                <!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>-->

                <!--<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>-->
                <!--<application android:enabled="true">
                    <activity android:excludeFromRecents="true">
                        <intent-filter>
                            <action android:name="android.intent.action.MAIN"/>
                            <category android:name="android.intent.category.LAUNCHER"/>
                        </intent-filter>
                    </activity>
                </application>-->
            </manifest>
            ]]>
            </manifestAdditions>
    </android>
</application>

アプリケーションSWFの名前は、値「App.swf」と同じです。ADTツールを実行してアプリケーションをパッケージ化する方法は次のとおりです。

C:/tools/flexsdk/4.6.0_mobile_win/bin/adt -package -target apk-debug -storetype pkcs12 -keystore C:/certs/android_cert.pfx -storepass password C:/build/app/bin-debug/android/App.apk C:/build/app/script/App-app.xml C:/build/app/bin-debug/android/assets.xml C:/build/app/bin-debug/android/assets C:/build/app/bin-debug/android/App.swf

どんなアイデアも非常に役立つでしょう:)

4

0 に答える 0