原创 java中堆和棧的區別

java中堆和棧的區別自然是面試中的常見問題,下面幾點就是其具體的區別 1.各司其職 最主要的區別就是棧內存用來存儲局部變量和方法調用。  而堆內存用來存儲Java中的對象。無論是成員變量,局部變量,還是類變量,它們指向的對象都存儲在堆內

原创 自定義好看的Toast

corner_bg.xml <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"

原创 適用於 Android 8.0 及以下全部版本的拍照示例

在res文件夾的xml文件夾中添加filepaths文件 <?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/a

原创 定義MVP框架

結構如下圖所示 Model層回調接口如下  Presenter層調用model層的方法請求數據,如果是異步則通過該回調將數據返回到P層 public interface BaseCallInterface<T> { /**

原创 詳解GC回收機制

GC回收是按照五種算法實現的 1.引用計數算法    效率較高,但是無法回收循環引用的對象 2.根搜索算法    它的處理方式就是,設立若干種根對象,當任何一個根對象到某一個對象均不可達時,則認爲這個對象是可以被回收的。    GC ro

原创 啓動Lib庫中的Activity及Service失敗問題

啓動時不報錯異常如下                                          Unable to start service Intent { act=jp.co.toshiba.tjet.intent.acti

原创 淺聊NFC

在項目中使用到nfc是,聊一聊NFC的試用範圍 通過項目中遇到的各種坑,認識到使用nfc傳輸只能傳輸較小的內容 比如只能傳輸小於100k的內容 當nfc傳輸大於200k時,會出現文件過大異常 然後查詢資料找到一般通過nfc傳輸文件都是通過

原创 GC根搜索算法

       JVM會採用一種算法來進行GC回收,即根搜索算法。它的處理方式就是,設立若干種根對象,當任何一個根對象到某一個對象均不可達時,則認爲這個對象是可以被回收的。          就拿上圖來說,ObjectD和ObjectE是

原创 使用觀察者模式實現EventBus功能

1.首先定義觀察者 /** * 觀察者 */ public interface ObServer { //觀察數據 void update(String data); } 2.定義操作觀察者的對象 publi

原创 自定義錶盤View

使用自定義View 屬性attrs文件如下 <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="WatchView">

原创 Android使用軟引用示例

 結合靜態內部類和WeakReference來解決Activity中可能存在的Handler內存泄露問題。 Activity中我們需要新建一個線程獲取數據,使用handler - sendMessage方式。下面是這一過程的一般性代碼:

原创 關於NFC P2P模式

P2P模式是NFC的三種工作模式之一,主要完成在兩個NFC設備之間數據的傳遞,傳輸的一方同時也可以接收數據。P2P模式是在Android2.3.3+(API 10)中開始加入的,之後在Android4.0+(API 14)後又重新提供了一

原创 自定義的可縮放可移動的layout

自定義的可縮放可移動的layout /** * 可縮放,可移動的Layout * @author fengzhiqi * @since 2017-8/24 */ public class PowerfulLayout extend

原创 android studio升級3.0,gradle升級項目報錯

錯誤如下: Could not resolve all files for configuration ‘:classpath’. Could not find com.android.tools.build:gradle:3.0.0

原创 Android 雷達圖

效果如下圖 自定義View代碼 1.數據源 /** * Created by fengzhiqi on 2017/6/10. */ public class RadarData { private String ti