作者Daredevil316 (大雷)
看板AndroidDev
標題[開發] ZXing 針對指定條碼播放音效
時間Sun Mar 27 23:34:32 2011
在掃描結果的部分如下:
public class ParsedResultType {
(中略)
public static final ParsedResultType ISBN = new ParsedResultType("ISBN");
}
public static String EEEE;
public static String toString2() {
Object ISBN = new String ("ISBN");
EEEE = (String)ISBN;
return EEEE;
}
這邊我加了 Down Casting 讓 EEEE 得到ISBN截取的字串
接著在另一個package中,關於播放音效的部分先做了下面的動作
(import的部分掠過)
public static final String
AAAA = com.(略).ParsedResultType.
EEEE;
public static final String
CCCC =
"9789862010228";
public void
playBeepSoundAndVibrate()
{
if(
AAAA == this.
CCCC);
{ if (playBeep && mediaPlayer != null)
{
mediaPlayer.start();
}
if (vibrate)
{
Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);
vibrator.vibrate(VIBRATE_DURATION);
}
}
}
OK~~
問題來了,我在實機測試時不管什麼條碼他都會發出音效!
我不大懂這原因出在哪裡。希望有哪位能伸出援手幫個忙~~ Help!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.18.56
1F:推 a73126:比對字串?...java的比對字串不是這樣寫的 03/27 23:01
2F:→ a73126:這樣是比對是不是同一物件,而不是字串 03/27 23:01
3F:→ a73126:if(AAAA.equals(CCCC)) 03/27 23:02
4F:→ Daredevil316:sorry 我不很懂java 可以解釋一下嗎? 03/27 23:02
5F:→ a73126:試試看吧~ 不過小弟也只是個新手 03/27 23:02
6F:→ Daredevil316:嗯...程式強制關閉了 03/27 23:03
7F:推 pm2001:用=是在比兩個指標 不是值 03/27 23:03
8F:推 a73126:囧...用log放在程式中抓一下斷在哪吧 03/27 23:04
9F:推 albb0920:強制關閉的話看 ddms 會有 stack dump 03/27 23:07
10F:推 nvidia:AndroidDev版淚目 03/27 23:09
11F:→ Daredevil316:樓上饒了我吧 我沒什麼程式背景 XD 03/27 23:18
12F:→ JyunHong:這跟有沒有背景無關吧 這種類型po到AndroidDev會比較適合 03/27 23:30
13F:→ Daredevil316:你一講我才發現我PO錯版了~ 03/27 23:32
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.18.56
14F:→ scribeTW:if(CCCC.equals(AAAA)) 倒過來,因為AAAA可能會是null 03/28 00:34
15F:→ scribeTW:不過你最好還是logcat看一下記錄才知道到底是怎樣 03/28 00:37
※ 編輯: Daredevil316 來自: 122.116.18.56 (03/28 01:18)
16F:→ jimwayne123:String 比較不是用 compareTo() 比較好嗎? 03/29 14:46