欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android二維碼開發(fā)學(xué)習(xí)教程

 更新時(shí)間:2016年07月11日 15:07:23   作者:Fndroid  
這篇文章主要為大家分享了Android二維碼開發(fā)學(xué)習(xí)教程,感興趣的小伙伴們可以參考一下

二維碼其實(shí)有很多種,但是我們常見的微信使用的是一種叫做QRCode的二維碼,像下面這樣的,可以放心的掃,這只是我的博客主頁鏈接啦:

 

關(guān)于QR碼編碼的二維碼,我們要知道幾個(gè)特點(diǎn):
 1. 掃描時(shí)可以從各個(gè)角度去掃,也就是旋轉(zhuǎn)多少度都沒關(guān)系,不信嗎?下次去肯德基買單試試咯。
 2. 二維碼有容錯(cuò)率,容錯(cuò)率越大,生成的二維碼也就越復(fù)雜,但是越不容易出錯(cuò),并且,當(dāng)二維碼被遮擋的時(shí)候也越容易掃描出來。這里我上傳的二維碼容錯(cuò)為30%,可以從左上角開始掃描,大概掃描到下圖范圍的時(shí)候就可以識(shí)別出來了:

 3. 二維碼的字符內(nèi)容是有限制的,并且內(nèi)容越多,二維碼越復(fù)雜。如果想你的二維碼容易被一些像素低的手機(jī)掃描出來,就盡量不要太復(fù)雜。 
注意:二維碼生成可以通過各種網(wǎng)站來完成,只需要輸入內(nèi)容即可得到。
 既然二維碼生成了,我們就要知道怎么用手機(jī)來掃描然后得到二維碼代表的內(nèi)容,這里介紹一個(gè)最簡(jiǎn)單的第三方庫:barcodescaner 

我們通過這個(gè)庫,可以直接編寫一個(gè)用于拍攝并識(shí)別的活動(dòng),然后通過活動(dòng)返回的結(jié)果進(jìn)行結(jié)果處理,具體的步驟如下:

 1. 添加依賴
 compile 'me.dm7.barcodescanner:zxing:1.8.4' 

 2. 創(chuàng)建一個(gè)活動(dòng),代碼如下所示: 

public class ScannerActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler {
 private ZXingScannerView mZXingScannerView;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  mZXingScannerView = new ZXingScannerView(this); // 將ZXingScannerView作為布局
  setContentView(mZXingScannerView);
 }

 @Override
 protected void onResume() {
  super.onResume();
  mZXingScannerView.setResultHandler(this); // 設(shè)置處理結(jié)果回調(diào)
  mZXingScannerView.startCamera(); // 打開攝像頭
 }

 @Override
 protected void onPause() {
  super.onPause();
  mZXingScannerView.stopCamera(); // 活動(dòng)失去焦點(diǎn)的時(shí)候關(guān)閉攝像頭
 }

 @Override
 public void handleResult(Result result) { // 實(shí)現(xiàn)回調(diào)接口,將數(shù)據(jù)回傳并結(jié)束活動(dòng)
  Intent data = new Intent();
  data.putExtra("text", result.getText());
  setResult(RESULT_OK, data);
  finish();
 }
} 

3. 在主活動(dòng)中打開這個(gè)活動(dòng),并處理傳回的數(shù)據(jù): 

public class HomeActivity extends AppCompatActivity {
 private TextView mTextView;
 private WebView mWebView;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_home);
  mTextView = (TextView) findViewById(R.id.tv);
  mWebView = (WebView) findViewById(R.id.wv);
 }

 public void scanCode(View view){
  startActivityForResult(new Intent(this, ScannerActivity.class), 1);
 }

 @Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  if (resultCode == RESULT_OK){
   mTextView.setText(data.getStringExtra("text")); // 顯示識(shí)別到的文字
   mWebView.loadUrl(data.getStringExtra("text")); // 將識(shí)別的內(nèi)容當(dāng)作網(wǎng)址加載到WebView
  }
 }
} 

4. 添加攝像頭和訪問網(wǎng)絡(luò)權(quán)限: 
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.INTERNET"/> 
使用這個(gè)工具類的方法非常簡(jiǎn)單,只需要將一個(gè)ZXingScannerView作為整個(gè)活動(dòng)的布局,然后設(shè)置解析成功的回調(diào)接口,實(shí)現(xiàn)回調(diào)的方法將數(shù)據(jù)回傳個(gè)主活動(dòng)即可。
當(dāng)然,如果是需要一個(gè)自定義掃描界面的效果,就沒有這么簡(jiǎn)單了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android實(shí)現(xiàn)常見的驗(yàn)證碼輸入框?qū)嵗a

    Android實(shí)現(xiàn)常見的驗(yàn)證碼輸入框?qū)嵗a

    我們?cè)陂_發(fā)APP的時(shí)候經(jīng)常要遇到輸入框,下面這篇文章主要給大家介紹了關(guān)于利用Android如何實(shí)現(xiàn)常見的驗(yàn)證碼輸入框的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)下吧。
    2017-09-09
  • Android圖片描邊效果的實(shí)現(xiàn)

    Android圖片描邊效果的實(shí)現(xiàn)

    這篇文章主要給大家介紹了Android圖片描邊效果的實(shí)現(xiàn),在添加圖片描邊的時(shí)候我們用到的是圖片蒙版技術(shù),文中通過代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • Android Studio3.5開發(fā)工具(安卓開發(fā)工具)安裝步驟詳解

    Android Studio3.5開發(fā)工具(安卓開發(fā)工具)安裝步驟詳解

    這篇文章主要為大家詳細(xì)介紹了Android Studio3.5開發(fā)工具安裝、安卓開發(fā)工具的安裝步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Android實(shí)現(xiàn)通用篩選欄

    Android實(shí)現(xiàn)通用篩選欄

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)通用篩選欄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 基于Android實(shí)現(xiàn)仿QQ5.0側(cè)滑

    基于Android實(shí)現(xiàn)仿QQ5.0側(cè)滑

    本課程將帶領(lǐng)大家通過自定義控件實(shí)現(xiàn)QQ5.0側(cè)滑菜單,課程將循序漸進(jìn),首先實(shí)現(xiàn)最普通的側(cè)滑菜單,然后引入屬性動(dòng)畫與拖動(dòng)菜單效果相結(jié)合,最終實(shí)現(xiàn)QQ5.0側(cè)滑菜單效果。通過本課程大家會(huì)對(duì)側(cè)滑菜單有更深層次的了解,通過自定義控件和屬性動(dòng)畫打造千變?nèi)f化的側(cè)滑菜單效果
    2015-12-12
  • Android自定義View實(shí)現(xiàn)遙控器按鈕

    Android自定義View實(shí)現(xiàn)遙控器按鈕

    這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)遙控器按鈕,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Kotlin泛型的型變之路演變示例詳解

    Kotlin泛型的型變之路演變示例詳解

    這篇文章主要為大家介紹了Kotlin泛型的型變之路演變示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • Android實(shí)現(xiàn)啟動(dòng)引導(dǎo)圖

    Android實(shí)現(xiàn)啟動(dòng)引導(dǎo)圖

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)啟動(dòng)引導(dǎo)圖,文中示例代碼介紹的非常詳細(xì),具有為大家詳細(xì)一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • Flutter倒計(jì)時(shí)/計(jì)時(shí)器的實(shí)現(xiàn)代碼

    Flutter倒計(jì)時(shí)/計(jì)時(shí)器的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Flutter倒計(jì)時(shí)/計(jì)時(shí)器的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Android camera實(shí)時(shí)預(yù)覽 實(shí)時(shí)處理,人臉識(shí)別示例

    Android camera實(shí)時(shí)預(yù)覽 實(shí)時(shí)處理,人臉識(shí)別示例

    本篇文章主要介紹了Android camera實(shí)時(shí)預(yù)覽 實(shí)時(shí)處理,面部認(rèn)證示例,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-01-01

最新評(píng)論