<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    amp@java

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      99 隨筆 :: 0 文章 :: 228 評(píng)論 :: 0 Trackbacks
    前天是情人節(jié),雖然結(jié)婚好多年了,但是老婆一直都喜歡驚喜的浪漫,可惜我卻是個(gè)木訥的呆子,做不出那些轟動(dòng)的事情。那天下午馬上就要下班回家了,突然在微博上看到有人談到geek的情人節(jié)禮物,雖然我不是geek,但是最近在學(xué)Android,老婆的手機(jī)也是Android系統(tǒng)的,何不專(zhuān)門(mén)做個(gè)程序給她?

    想法可嘉,但是動(dòng)起手來(lái)卻不是那么回事。學(xué)了那么多天,真正派上用場(chǎng)的還沒(méi)學(xué)到。時(shí)間只剩下不到一個(gè)小時(shí)了,我會(huì)的只是在屏幕上顯示幾個(gè)大字:XXX,我愛(ài)你!

    后來(lái)想想似乎太單調(diào),如果能夠加上點(diǎn)背景音樂(lè)可能好點(diǎn),但是還沒(méi)學(xué)會(huì)怎么使用,上網(wǎng)搜了一下,幸好很簡(jiǎn)單,用MediaPlayer就可以了,幾條語(yǔ)句就能搞定。音樂(lè)文件怎么來(lái)呢?通過(guò)網(wǎng)絡(luò)在線播放是最簡(jiǎn)單的,于是就到百度MP3搜了一下“情人節(jié)快樂(lè)”,我記得有一首歌里面一直在喊“情人節(jié)快樂(lè)”的,結(jié)果最后發(fā)現(xiàn)那首歌名字叫《沒(méi)有情人的情人節(jié)》……

    算了,管它呢,有老婆就行了,沒(méi)有情人照樣過(guò)情人節(jié),打開(kāi)發(fā)現(xiàn)鏈接居然是百度的,以前百度不是說(shuō)它只負(fù)責(zé)搜索,不負(fù)責(zé)存放嗎,怎么現(xiàn)在的MP3都放在百度的服務(wù)器了?把鏈接復(fù)制下來(lái),在模擬器上運(yùn)行還是挺好的,因?yàn)樗玫氖请娔X的寬帶,呵呵。不過(guò)過(guò)了一會(huì)提示下載失敗,把那個(gè)地址往瀏覽器一貼,果然打不開(kāi)了,原來(lái)百度這種下載鏈接是有有效期的,只能讓你試聽(tīng)一下,然后下載,不是長(zhǎng)期有效的。這就麻煩了,到時(shí)候裝在手機(jī)上沒(méi)聲音豈不是很糗?

    再搜索一下,還好,可以把MP3文件放在assets里面,發(fā)布程序的時(shí)候把它包含在apk里面就行了,不用聯(lián)網(wǎng)了。

    現(xiàn)在可以在顯示大字的同時(shí)播放《沒(méi)有情人的情人節(jié)》了。看了一下效果,還是有點(diǎn)怪異,手機(jī)的狀態(tài)欄和程序的標(biāo)題跟黑色的背景,紅色的大字似乎不太搭配,于是繼續(xù)搜索全屏代碼,哈哈,兩句搞定,這樣炫多了。

    不過(guò)一直看著那幾個(gè)字沒(méi)任何反應(yīng),似乎太單調(diào)了,于是就想讓它們不斷變色,或者動(dòng)一下也好,但是無(wú)論怎么弄都搞不定,下班時(shí)間到了,要去接老婆了,就這樣吧。

    之前都是在模擬器上運(yùn)行,或者接個(gè)USB在手機(jī)上運(yùn)行,還不知道怎么打包成apk呢,這下居然沒(méi)搜索到,可能太簡(jiǎn)單了,大家都沒(méi)說(shuō)。于是在項(xiàng)目上點(diǎn)右鍵,果然看到導(dǎo)出apk的菜單,我選擇了unsigned方式導(dǎo)出,在手機(jī)上居然安裝不了。再搜索一下,哦,原來(lái)是要導(dǎo)出成signed apk才能裝的,但是我沒(méi)有證書(shū),怎么signed呢?沒(méi)想到ADT還可以生成證書(shū),一下就搞定了,這比Symbian那種簽名簡(jiǎn)單多了,但是可能也是導(dǎo)致Android惡意軟件泛濫的原因之一。

    去接老婆的時(shí)候通過(guò)藍(lán)牙把a(bǔ)pk發(fā)到她手機(jī)上,裝上,運(yùn)行,從她表情上看出,我的努力沒(méi)有白費(fèi)。不過(guò)最后還是發(fā)現(xiàn)了個(gè)嚴(yán)重的bug,那首歌還沒(méi)放完,另外一個(gè)聲音已經(jīng)重新開(kāi)始了,形成了“二重唱”的效果,而且程序退出之后還在唱,趕工造成的悲劇啊。

    下面是代碼:
    public class LoveActivity extends Activity {
        TextView text;
        
    /** Called when the activity is first created. */
        @Override
        
    public void onCreate(Bundle savedInstanceState) {
            
    super.onCreate(savedInstanceState);
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,   
            WindowManager.LayoutParams.FLAG_FULLSCREEN);  
            requestWindowFeature(Window.FEATURE_NO_TITLE);  
            setContentView(R.layout.main); 
            MediaPlayer mp 
    = new MediaPlayer();
            
    try{
                AssetManager assetManager 
    = getAssets();
                AssetFileDescriptor afd 
    = assetManager.openFd("a.mp3");
                mp.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
                mp.prepare();
                mp.start();
            }
            
    catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    main.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation
    ="vertical"
        android:layout_width
    ="fill_parent"
        android:layout_height
    ="fill_parent"
        
    >
        
    <TextView 
        
    android:id="@+id/textView1" 
        android:text
    ="@string/loveyou" 
        android:layout_width
    ="match_parent" 
        android:layout_height
    ="match_parent" 
        android:gravity
    ="center" 
        android:textColor
    ="#ff0000"
        android:textStyle
    ="bold"
        android:textSize
    ="50dip"
        
    />
        
       
    </LinearLayout>
    strings.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        
    <string name="hello">Hello World, LoveActivity!</string>
        
    <string name="app_name">Love</string>
        
    <string name="loveyou">XXX\n我愛(ài)你</string>
    </resources>
    再把那首mp3放到assets里,改名為a.mp3即可。




    希望明年能做出個(gè)更好的。
    posted on 2012-02-16 11:06 amp@java 閱讀(2295) 評(píng)論(2)  編輯  收藏 所屬分類(lèi): Android

    評(píng)論

    # re: 送給老婆的情人節(jié)禮物——一個(gè)Android程序 2012-02-17 13:30 moose
    很有想法  回復(fù)  更多評(píng)論
      

    # re: 送給老婆的情人節(jié)禮物——一個(gè)Android程序 2012-02-21 15:52 深藍(lán)色心情
    愛(ài)~~  回復(fù)  更多評(píng)論
      

    主站蜘蛛池模板: 亚洲AV无码一区二区二三区软件 | 无码少妇一区二区浪潮免费| 国产人成亚洲第一网站在线播放| 国产aa免费视频| 国产午夜无码精品免费看动漫| avtt天堂网手机版亚洲| 亚洲精品视频免费观看| 亚洲啪啪免费视频| 亚洲第一视频在线观看免费| 亚洲精品美女在线观看| 免费午夜爽爽爽WWW视频十八禁 | 亚洲无线一二三四区手机| 最近中文字幕完整版免费高清| 亚洲日本一线产区和二线 | 亚洲精品WWW久久久久久| h在线观看视频免费网站| 一日本道a高清免费播放| 亚洲欧洲日产国码二区首页| 亚洲精品成人网久久久久久| 亚洲免费一级视频| 中文字幕成人免费高清在线视频 | 很黄很黄的网站免费的| 五级黄18以上免费看| 亚洲免费在线视频观看| 久久影视国产亚洲| 成人免费无遮挡无码黄漫视频| 免费91麻豆精品国产自产在线观看 | 国产成人精品免费视频大全麻豆 | 日韩一区二区三区免费播放| 亚洲免费闲人蜜桃| 亚洲视频免费在线观看| 亚洲综合色成在线播放| 成人黄动漫画免费网站视频| 99热这里只有精品6免费| 中文字幕免费在线看| 婷婷国产偷v国产偷v亚洲| 亚洲最大成人网色香蕉| 精品亚洲麻豆1区2区3区| 精品亚洲综合在线第一区 | 亚洲第一成年网站视频| 亚洲欧洲日本天天堂在线观看|