欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

air for android hello world

程序员文章站 2022-06-08 09:01:39
...

貌似大牛们 不屑发,而我不是大牛

非常感谢 这上的这位老兄http://bbs.9ria.com/thread-65775-1-1.html

 

代码和apk 在附件里

1. 使用原有的Air2.5 sdk 覆盖flex builder目录下的4.0sdk  根据http://bbs.9ria.com/thread-65775-1-1.html

 flex3.2 sdk  也可以

 

2. new FlexProject-->注意创建的是as的air应用程序,没试过mxmlc

3. 根据如上的网址中 app-app.xml 拷贝过来 简单修改下。

4. 编译生成 swf

 

5. adt -package -target apk-emulator -storetype pkcs12 -keystore app.p12 A
pk Android-app.xml Android.swf icons   

打包 apk  使用模拟器 参数  是 apk-emulator 设备是apk


air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
 

6. 貌似需要先安装一个 Runtime_Emulator_Froyo_20100930.apk
air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
 
7.
air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
 8.
air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
 
9

package {
	import flash.display.Sprite;
	import flash.events.Event;
	
	import mx.utils.ColorUtil;

	public class Android extends Sprite
	{
		private var sprite:Sprite;
		
		
		public function Android()
		{
			this.addEventListener(Event.ADDED_TO_STAGE,addToStage);
		}
		public function addToStage(e:Event):void
		{
				
			
			var circle_num:Number=25;//复制影片剪辑个数
			for(var i:int=1; i<circle_num; i++){
			var my_circle:VCircle=new VCircle();
			addChild(my_circle);
			my_circle.scaleX=my_circle.scaleY=0.5*Math.random()+0.5;//随机比例
			my_circle.alpha=my_circle.alpha=0.5*Math.random()+0.5;//随机透明度
			my_circle.x=10;//初始化位置
			my_circle.y=10;
		}

			
			
		}
		
	} 
}

 

package
{
	import flash.display.Sprite;
	import flash.events.Event;

	public class VCircle extends Sprite
	{
		private  var targetX:Number=400;
		private var targetY:Number=300;
		
		private var speed:Number=10;
		public function VCircle()
		{
			super();
			this.addEventListener(Event.ADDED_TO_STAGE,addToStage);
		}
		public function addToStage(e:Event):void
		{
			
			var sprite:Sprite=new Sprite();
			sprite.graphics.beginFill(0x333fff,1);
			sprite.graphics.drawCircle(0,0,15);
			sprite.graphics.endFill();
			this.addChild(sprite);
			
			this.addEventListener(Event.ENTER_FRAME,onEnter);
			
		}
		private function onEnter(e:Event):void
		{		
			var flag:Number=Math.random()-0.5;
			if(Math.abs(flag)<0.02){
   				targetX=800*Math.random();
   				targetY=600*Math.random();
			}
			this.x+=(targetX-this.x)/speed;
			this.y+=(targetY-this.y)/speed;

		}
		
	}
}

 

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/2.5">

  <id>AndroidAPP</id>
<!-- 版本号 -->
  <versionNumber>0.1.14</versionNumber>

  <versionLabel>0.1.14</versionLabel>
<!-- 输出的文件名 -->
  <filename>AndroidAPP</filename>

  <description/>

  <!-- To localize the description, use the following format for the description element.<description><text xml:lang="en">English App description goes here</text><text xml:lang="fr">French App description goes here</text><text xml:lang="ja">Japanese App description goes here</text></description>-->
<!-- 此应用在手机上的名字 -->
  <name>AndroidAPP</name>

  <!-- To localize the name, use the following format for the name element.<name><text xml:lang="en">English App name goes here</text><text xml:lang="fr">French App name goes here</text><text xml:lang="ja">Japanese App name goes here</text></name>-->

  <copyright/>
  <initialWindow>
  <!-- 下面这些都是对应的中文意思 -->
    <content>Android.swf</content>
    <systemChrome>standard</systemChrome>
    <transparent>false</transparent>
    <visible>true</visible>
        <!-- 全屏 -->
    <fullScreen>true</fullScreen>
    
    <renderMode>auto</renderMode>
        <!-- 自动检测(重力感应适应屏幕) -->
    <autoOrients>false</autoOrients>
        <!-- 方向 -->
    <aspectRatio>landscape</aspectRatio>
</initialWindow>
  <icon>
  <!-- 图标 -->
    <image48x48>icons/icon48.png</image48x48>
</icon>
  <customUpdateUI>false</customUpdateUI>
  <allowBrowserInvocation>false</allowBrowserInvocation>
  <android>
    <manifestAdditions>
      <![CDATA[<manifest>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>]]>
    </manifestAdditions>
  </android>
</application>

 

生成apk 报下边的错是 因为 java -version javac -version 两个版本不一样。因为我安装了oracle 10g自带jdk

C:\Documents and Settings\hongli\Local Settings\Temp\74819ada-aa6e-4465-85e4-9d3
0b4e71b91\out\air\com\adobe\appentry\GetVersionCode.smali[0,-1] required (...)+
loop did not match anything at input '<EOF>'

  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 5.6 KB
  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 5.6 KB
  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 3.8 KB
  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 107.7 KB
  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 107.7 KB
  • air for android  hello world
            
    
    博客分类: iphone/android AIRAndroidFlashXMLFlex 
  • 大小: 62.5 KB
  • app.rar (173.9 KB)
  • 下载次数: 23