Android開(kāi)發(fā)實(shí)現(xiàn)打開(kāi)手機(jī)淘寶,并自動(dòng)識(shí)別淘口令,彈出商品信息,大家都遇到過(guò)被莫名其妙拉進(jìn)一個(gè)微信群,然后群主開(kāi)始發(fā)一些商品的鏈接,我們點(diǎn)擊這個(gè)鏈接,會(huì)讓我們復(fù)制一個(gè)口令(就像這個(gè)¥AzZK0hPyou5¥),當(dāng)我們復(fù)制這個(gè)口令打開(kāi)淘寶會(huì)自動(dòng)彈出這個(gè)商品的信息。今天,就來(lái)和大家分享一下,這個(gè)需求是如何實(shí)現(xiàn)的。
1.首先我們需要后臺(tái)幫助我們對(duì)接淘寶的商品接口,因?yàn)檫@個(gè)東西(¥AzZK0hPyou5¥)是淘寶提供的,我們要做的只是通過(guò)網(wǎng)絡(luò)請(qǐng)求我們的后臺(tái),把這個(gè)口令拿到就行,至于后臺(tái)是如何調(diào)用淘寶的接口,這個(gè)完全不需要我們操心。
2.拿到這個(gè)口令以后,我們第一步先要打開(kāi)淘寶,這里小伙伴們要注意一下,我們只需要打開(kāi)手機(jī)淘寶的程序就行,不需要進(jìn)入商品詳情頁(yè)什么(網(wǎng)上大部分都是講的如何進(jìn)入商品的詳情頁(yè)面,不過(guò),對(duì)于我們這個(gè)需求,進(jìn)入商品詳情頁(yè)面是不適用的),我們可以通過(guò)下面的代碼來(lái)啟動(dòng)手機(jī)淘寶
Intent intent = getPackageManager().getLaunchIntentForPackage("com.taobao.taobao");startActivity(intent);上面的代碼很好理解,通過(guò)淘寶包名創(chuàng)建了一個(gè)意圖(注:“com.taobao.taobao”就是手機(jī)淘寶的包名),最后打開(kāi)這個(gè)意圖對(duì)應(yīng)的Activity。
3.雖然這個(gè)時(shí)候我們已經(jīng)能夠成功的打開(kāi)淘寶,但是,我們要如何讓淘寶自動(dòng)識(shí)別出來(lái)我們復(fù)制的口令所對(duì)應(yīng)的商品信息呢?我當(dāng)時(shí)也在這里卡了很久,我們不妨回頭再看一下我們?cè)谖⑿湃豪锏牟僮鞑襟E,打開(kāi)鏈接,復(fù)制商品的口令,再打開(kāi)淘寶,自動(dòng)彈出商品的信息(PS:這里感謝我的IOS搭檔),我們只是做了一個(gè)復(fù)制的操作,就自動(dòng)彈出商品的信息了,問(wèn)題的關(guān)鍵應(yīng)該就是在這里了。
4.既然是復(fù)制,肯定是復(fù)制到系統(tǒng)的剪切板了,我們可以通過(guò)下邊的代碼來(lái)把口令給復(fù)制到系統(tǒng)的剪切板里
//獲取剪貼板管理器:ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);// 創(chuàng)建普通字符型ClipDataClipData mClipData = ClipData.newPlainText("Label", "¥AzZK0hPyou5¥");// 將ClipData內(nèi)容放到系統(tǒng)剪貼板里。cm.setPrimaryClip(mClipData);注意:ClipboardManager 和 ClipData 分別是下面的兩個(gè)包下的
import android.content.ClipData;import android.content.ClipboardManager;
5.我這里的步驟的順序是不對(duì)的,應(yīng)該是先復(fù)制信息到剪切板,然后再打開(kāi)淘寶,第2步和第4步的順序換一下就可以了。這里我是為了記錄我當(dāng)時(shí)的錯(cuò)誤想法,所以排版就沒(méi)有改過(guò)來(lái),希望大家見(jiàn)諒!
最后:到這里這個(gè)需求就完成了,其實(shí)也挺簡(jiǎn)單的,希望可以幫助到有需要的小伙伴們!
PS:下面看下android 仿淘寶淘口令實(shí)現(xiàn)代碼
復(fù)制*wangbin1*口令打開(kāi)APP
在主activity onResume中執(zhí)行代碼塊
public void GangUpInvite(final Context context) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(CLIPBOARD_SERVICE); //無(wú)數(shù)據(jù)時(shí)直接返回 if (!clipboard.hasPrimaryClip()) { return; } //如果是文本信息 if (clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) { ClipData cdText = clipboard.getPrimaryClip(); ClipData.Item item = cdText.getItemAt(0); //此處是TEXT文本信息 if (item.getText() != null) { String str = item.getText().toString(); String key = "*"; final int first = str.indexOf(key); if (first >= 0) { String new1 = str.substring(first + 1); int tow = new1.indexOf(key); if (tow >= 0) { String new2 = new1.substring(0, tow); System.out.print(new2); if (new2.length() == 8) { //new2即為口令字符串 } } } } }}取到key配合后端 獲取該口令相關(guān)信息
總結(jié)
以上所述是小編給大家介紹的Android實(shí)現(xiàn)打開(kāi)手機(jī)淘寶并自動(dòng)識(shí)別淘寶口令彈出商品信息功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選