日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

安卓学习 之 多媒体技术(八)

發布時間:2024/2/28 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安卓学习 之 多媒体技术(八) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、通知

  • 需要NotificationManager對通知進行管理,getSystemService獲取系統中的那個服務。
  • NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
  • 用support-v4庫提供的NotificationCompat類來創建Notification對象,確保了兼容性。

  • 創建一個豐富的Notification對象,setContentTitle設置標題,setContentText設置內容,setWhen用于指定通知被創建的時間。使用Build方法進行生成。

  • Notification notification = new NotificationCompat.Builder(this) .setContentTitle("This is content title") .setContentText("This is content text") .setWhen(System.currentTimeMillis()) .setSmallIcon(R.mipmap.ic_launcher) .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher)) .build();
  • 使用notify方法將通知顯示出來,notify()有兩個參數,一個是id,一個是剛才創建的notification對象。
  • manager.notify(1, notification);
  • 現在的notify可以顯示出來,但是不能相應點擊事件。我們現在讓他點擊后進入NotificationActivity活動中。
  • 先構建Intent對象,pendingIntent式延遲執行的Intent,根須需求選擇是使用getActivity還是getService。

    Intent intent = new Intent(this,NotificationActivity.class); PendingIntent pi = PendingIntent.getActivity(this,0,intent,0);

    第一個參數是context,第二和第四個參數通常傳入0就可以了。

  • 在NotificationCompat.Builder中調用setContentIntent(pi)傳入即可。
  • 通知圖標在產生點擊事件時不會消失,要使其消失,有兩種方法:
    • 要在NotificationActivity中添加
    NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); manager.cancel(1);
    • 或者NotificationCompat.Builder調用setAutoCancel(true)

    通知的高級用法

  • 允許播放音頻。
  • Uri soundUri = Uri.fromFile(new File("/system/media/audio/ringtones/ Basic_tone.ogg")); notification.sound = soundUri;
  • 震動。
  • //下標為0的值表示手機靜止的時長,下標為1的值表示手機振動的時長,下標為2的值又表示手機靜止的時長,以此類推。 setVibrate(new long[]{0,1000,1000,1000}).build(); notification.vibrate = vibrates;
  • LED燈
  • // LED 燈以綠色的燈光一閃一閃的效果 notification.ledARGB = Color.GREEN; notification.ledOnMS = 1000; notification.ledOffMS = 1000; notification.flags = Notification.FLAG_SHOW_LIGHTS;

    二、短信

    接收短信

  • 定義一個接受者。
  • class MessageReceiver extends BroadcastReceiver { @Overridepublic void onReceive(Context context, Intent intent) { Bundle bundle = intent.getExtras();Object[] pdus = (Object[]) bundle.get("pdus"); // 提取短信消息SmsMessage[] messages = new SmsMessage[pdus.length]; for (int i = 0; i < messages.length; i++) {messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);}String address = messages[0].getOriginatingAddress(); // 獲取發送方號碼String fullMessage = "";for (SmsMessage message : messages) {fullMessage += message.getMessageBody(); // 獲取短信內容}sender.setText(address); content.setText(fullMessage);} }

    我們從 Intent 參數中取出了一個 Bundle 對象,然后使用 pdu 密鑰來提取一個 SMS pdus 數組, 其中每一個 pdu 都表示一條短信消息。接著使用 SmsMessage 的
    createFromPdu() 方法將每一個 pdu 字節數組轉換為 SmsMessage 對象, 調用這個對象的
    getOriginatingAddress()方法就可以獲取到短信的發送方號碼,調用 getMessageBody()方法就可以獲取到短信的內容,然后將每一個 SmsMessage 對象中的短信內容拼接起來,就組成了一條完整的短信。

  • 在活動中的oncreate方法中綁定 事件 與 內容接受者。
  • receiveFilter = new IntentFilter(); receiveFilter.addAction("android.provider.Telephony.SMS_RECEIVED"); messageReceiver = new MessageReceiver(); registerReceiver(messageReceiver, receiveFilter);

    接收短信

  • 得到SmsManager實例,直接調用sendextMessage方法。
  • SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(to.getText().toString(), null,msgInput.getText().toString(), null, null);

    sendTextMessage()方法接收五個參數,其中第一個參數用于指定接收人的手 機號碼,第三個參數用于指定短信的內容

  • 類似通知,想要在發送短信之后知道短信的狀態,怎么辦呢?
  • sendFilter = new IntentFilter(); sendFilter.addAction("SENT_SMS_ACTION"); sendStatusReceiver = new SendStatusReceiver(); registerReceiver(sendStatusReceiver, sendFilter); send.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {SmsManager smsManager = SmsManager.getDefault(); Intent sentIntent = new Intent("SENT_SMS_ACTION");PendingIntent pi = PendingIntent.getBroadcast (MainActivity.this, 0, sentIntent, 0);smsManager.sendTextMessage(to.getText().toString(), null,msgInput.getText().toString(), pi, null);} });class SendStatusReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {if (getResultCode() == RESULT_OK) {// 短信發送成功Toast.makeText(context, "Send succeeded", Toast.LENGTH_LONG).show();} else {// 短信發送失敗Toast.makeText(context, "Send failed", Toast.LENGTH_LONG).show();}} }
    • 獲取到了一個 PendingIntent 對象,并將它作為第四個參數傳遞到 sendTextMessage()方法中
    • PendingIntent 發出 SENT_SMS_ACTION 這樣的一個事件
    • 新建一個事件接受者SendStatusReceiver,綁定該接受者 和 SENT_SMS_ACTION 事件。

    三、攝像頭和相冊

  • 定義輸出圖片的路徑
  • 啟動相機程序的Intent
  • 啟動相機并拍照
  • 進入onActivityResult,啟動截圖的Intent
  • 截圖成功
  • 把圖片顯示出來
  • 四、多媒體文件

    音頻

    方法名功能描述
    setDataSource()設置要播放的音頻文件的位置。
    prepare()在開始播放之前調用這個方法完成準備工作。
    start()開始或繼續播放音頻。
    pause()暫停播放音頻。
    reset()將 MediaPlayer 對象重置到剛剛創建的狀態。
    seekTo()從指定的位置開始播放音頻。
    stop()停止播放音頻。調用這個方法后的 MediaPlayer 對象無法再播放音頻。
    release()釋放掉與 MediaPlayer 對象相關的資源。
    isPlaying()判斷當前 MediaPlayer 是否正在播放音頻。
    getDuration()獲取載入的音頻文件的時長。

    首先需要創建出一個MediaPlayer 對象,然后調用 setDataSource()方法來設置音頻文件的路徑,再調用 prepare()方法使MediaPlayer 進入到準備狀態,接下來調用start()方法就可以開始播放音頻,調用pause() 方法就會暫停播放,調用 reset()方法就會停止播放。

    視頻

    方法名功能描述
    setVideoPath()設置要播放的視頻文件的位置。
    start()開始或繼續播放視頻。
    pause()暫停播放視頻。
    resume()將視頻重頭開始播放。
    seekTo()從指定的位置開始播放視頻。
    isPlaying()判斷當前是否正在播放視頻。
    getDuration()獲取載入的視頻文件的時長。

    總結

    以上是生活随笔為你收集整理的安卓学习 之 多媒体技术(八)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 手机在线成人av | 一卡二卡三卡 | 黑白配在线观看免费观看 | a级欧美 | 琪琪色av| 亚洲天堂中文 | 男人插入女人下面视频 | 欧美乱淫视频 | 91精品国产综合久久久久 | 男女激情视频网站 | 野花视频免费在线观看 | 国产精久久一区二区三区 | 日韩欧美在线第一页 | 欧美日韩一区二区精品 | 久久久久久爱 | 亚洲污片 | 性生交大片免费看女人按摩 | 国产精品成人久久 | 国产精品wwww | 久久精品色欲国产AV一区二区 | 免费污网站在线观看 | 天天免费看av| 九九99精品视频 | 亚洲一区二区av在线 | 波多野结衣小视频 | 亚洲制服无码 | 熟妇一区二区三区 | 日皮在线观看 | 成人瑟瑟| 欧美激情校园春色 | 十八禁一区二区三区 | 天堂久久爱 | 国产伦精品一区二区三区免费迷 | 久久成人网18网站 | 97神马影院| 日本a级黄 | 日本黄色激情视频 | a天堂中文在线观看 | 久久黄色一级视频 | 国产片网站| 鲁片一区二区三区 | 国产精品久久久久久久久久久久久久久久久久 | 中文字幕第十一页 | 一本之道高清无码视频 | 少妇高潮毛片色欲ava片 | a级在线免费观看 | 日本在线观看网站 | 亚洲第一福利视频 | 欧美18aaaⅹxx | 风间由美一二三区av片 | 天天射寡妇 | 久久免费视频1 | 日本成人免费在线视频 | 九色91popny蝌蚪新疆 | 黄色成年人网站 | 色综合久久88色综合天天免费 | 国产福利一区二区 | 久久久91精品 | 日韩激情啪啪 | 激情拍拍拍| 欧美精品一区在线观看 | 欧美亚洲欧美 | 午夜精品成人毛片非洲 | 僵尸艳谈 | 国产69精品麻豆 | 亚洲视频免费 | 中文字幕一区二区三区精彩视频 | 日本一区二区精品视频 | 激情五月视频 | 亚洲男人的天堂在线观看 | 色一区二区三区 | 中文字幕国产一区 | 日韩在线观看视频一区 | 国产操操操 | 国产精品人人妻人人爽人人牛 | 国产成人精品一区二区三区福利 | 久久久久国产精品一区二区 | 亚洲香蕉 | 樱花影院最新免费观看攻略 | 日韩一区二区在线观看视频 | 国产精品一区二区三区四区五区 | jzjzjzjzj亚洲成熟少妇 | 在线观看污 | 5a毛片 | 欧美另类极品videosbest最新版本 | 香蕉亚洲 | 久久国产精品免费 | 色偷偷中文字幕 | 日本a网| 一本一道无码中文字幕精品热 | 免费黄色三级 | 欧亚av | 中文字幕一区二区三区人妻不卡 | 亚洲视频国产 | 少妇熟女高潮流白浆 | 色噜噜狠狠狠综合曰曰曰88av | 欧美日韩一区二区三区不卡视频 | 在线天堂中文在线资源网 | 亚洲一区二区精品 |