@StoneWay3 最近幾年轉后端了,沒再做Android了,推薦去GitHub上找一些使用量較高的二維碼封裝庫使用+學習研究。
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
@StoneWay3 最近幾年轉后端了,沒再做Android了,推薦去GitHub上找一些使用量較高的二維碼封裝庫使用+學習研究。
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
@Spur2 這個還真沒試過 按道理應該可以的。
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
同感,我也覺得說object修飾的類是靜態類不太合適
Kotlin中的object 與companion object的區別之前寫了一篇Kotlin中常量和靜態方法的文章,最近有人提出一個問題,在companion object中調用外部的成員變量會調用不到,這才意識到問題,本篇文章會帶著這個疑問...
文章寫的有問題,容易誤認子弟,用object 修飾的類為靜態類,里面的方法和變量都為靜態的。網上也是很多這種說法,真是害死一批人。object 修飾的類是單例類,里面的方法和變量看怎么定義了(普通還是普通),靜態方法可應用@JvmStatic表示
代碼是公司項目里的,數據模型比較復雜,沒寫Demo??...文章只是說下思想
Android - ViewPager進階篇之動態刷新本篇博文探究的問題:ViewPager的界面刷新問題。需求:ViewPager每頁只有一個ImageView(通俗來講叫“輪播圖”),一開始填入了一張默認圖片,后來從服務器獲...
應該是相機沒有聚焦識別或者一直失敗失敗。是不是二維碼有問題?或者調整下距離再試試?
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
備注:測試手機是三星S8,手機屏幕分辨率 2960*1440 方法0 不過里面的方法已經過時了。 方法1 方法2 方法3 總結: 方法2和方法3查看源碼可知其實是一樣的邏輯。...
先說下問題產生的原因:
其實,在掃描解碼時有一個字符集的概念(CHARACTER_SET)。我去查了下ZXing Android Embedded庫最新的源碼,他在解碼時調用了ZXing庫提供的com.google.zxing.common.StringUtils類的一個方法“猜測編碼”,方法部分源碼如下:
public static String guessEncoding(byte[] bytes, Map<DecodeHintType,?> hints) {
if (hints != null && hints.containsKey(DecodeHintType.CHARACTER_SET)) {
return hints.get(DecodeHintType.CHARACTER_SET).toString();
}
// For now, merely tries to distinguish ISO-8859-1, UTF-8 and Shift_JIS,
// which should be by far the most common encodings.
int length = bytes.length;
boolean canBeISO88591 = true;
boolean canBeShiftJIS = true;
boolean canBeUTF8 = true;
......
}
如果你設置了字符集(CHARACTER_SET),就用你設置的字符集進行解碼;當你沒有設置字符集時,代碼會嘗試使用ISO-8859-1, UTF-8和Shift_JIS進行解碼,這3個只有UTF-8是支持中文的(Shift_JIS只支持日文漢字)。
解決問題的辦法:
ZXing Android Embedded庫內部是做了字符集(CHARACTER_SET)配置項處理的,但是沒有在外部提供傳參寫入(指的是IntentIntegrator類的相關方法),那么就需要開發者手動傳了。
傳遞字符集的代碼如下(舉例):
IntentIntegrator intentIntegrator = new IntentIntegrator(MainActivity.this);
intentIntegrator.addExtra(Intents.Scan.CHARACTER_SET, "UTF-8");
intentIntegrator.initiateScan();
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
工具類方法的第一個參數String content,就是字符串。
具體使用,可以看下我文章最后給的Demo.
Android進階 - 二維碼生成摘要 最近,公司業務上有個生成二維碼圖片的需求(Android端),之后筆者在網上查閱了一些資料,實現了這個功能。最后,給自己做個筆記,給各位做下分享。 什么是二維碼? 百度...
現在要在android上獲取權限必須得動態申請,直接在manifest 申請是無效的,動態申請后的權限,就不用再次申請了。但是在android 開發中用華為真機測試的時候,發...
onActivityResult
Android進階 - 二維碼掃描摘要 最近,在公司項目上需要加入“二維碼掃描”的功能(Android端),筆者在網上查閱了一些資料,實現了這個功能。最后給自己做個筆記,給各位做下分享。 原理說明 “二維碼掃...
感謝反饋,有空我試下。
Android - ViewPager進階篇之無限滑動在Android開發中,我們常常用ViewPager來為自己的應用創建廣告條幅,并且常常會遇到這樣的需求 —— ViewPager無限滑動。 其實,仔細想一下原理還是挺簡單的...
發現個問題,當 viewPager.setOffscreenPageLimit(3);獲取時其他數字時,也會出現java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.這個問題。所以需要在 // ImageViews集合中的圖片個數在[2,3]時會存在問題,遞歸再次填充一遍
if(mImageViews.size() > 1 && mImageViews.size() < 4){
initImageViews(imageIds);
}做判斷應該為(mImageViews.size() > 1+limit && mImageViews.size() < 4+limit)
前言 在Java中,Java中volatile關鍵字十分重要 本文全面 & 詳細解析volatile關鍵字,希望你們會喜歡 目錄 1. 定義 Java 中的1個關鍵字 / 修...
那只是個圖片Logo(宣傳畫), 正常的二維碼都是方形的。
Android進階 - 二維碼生成摘要 最近,公司業務上有個生成二維碼圖片的需求(Android端),之后筆者在網上查閱了一些資料,實現了這個功能。最后,給自己做個筆記,給各位做下分享。 什么是二維碼? 百度...
這方法是好使的,但是有兩個改善項(本人編譯環境是API 27):
1.最好繼承兼容類extends android.support.v7.widget.AppCompatTextView
2.重寫onFocusChanged方法,不能DO NOTHING,最少要調用父類的方法super.onFocusChanged,否則會報錯:
Overriding method should call super.onFocusChanged less... (?F1)
Some methods, such as View#onDetachedFromWindow, require that you also call the super implementation as part of your method.
Android TextView 跑馬燈效果要想實現一直循環的跑馬燈效果,需要重寫isFocused()方法使其一直處于獲取焦點狀態,并且onFocusChanged()里面不能調用父類的方法,否則跑馬燈將會停止。下面...
@Shayne_xxy 我工具類里的3個參數:character_set(字符集)、error_correction(容錯級別)、margin(邊距)目前都是傳的String類型。用我的工具類應該不會出現int類型。
Android進階 - 二維碼生成(花式效果)摘要: 本篇是對筆者上一篇文章 Android進階 - 二維碼生成 的一點補充。 效果圖: 工具類: 本篇不再重復說原理性的東西了。需要的朋友可以直接Copy使用。 注:使用...
為了提高客戶端的開發效率以及手機對h5技術的支持好不夠完美,hybird技術被推上了歷史舞臺。它的基本原理是使用前端的技術(html/css/js)進行開發,以達到Nativ...