原创 Environment.getExternalStorageDirectory() is deprecated過時的替代方案

用新的Android SDK 29編譯的時候,Studio提示Environment.getExternalStorageDirectory()過時了,要用Context#getExternalFilesDir代替,Android Q以後

原创 Android Studio升級3.5之後buildOutput.apkData must not be null的問題解決

其實每次Android Studio版本升級都有坑,抱着嚐鮮的心態今天把AS升級到3.5之後,在使用Build => Generate Signed APK打包的時候,出現了一個錯誤: Caused by: java.lang.Illeg

原创 運行程序報錯instantRunSplitApkResourcesDebug\out\slice_1\resources_ap的問題解決

最近在開發項目中使用Android Studio運行項目,發現運行時報錯,怎麼clean代碼和rebuild項目都沒用,報錯信息如下: Caused by: java.lang.RuntimeException: java.lang.Ru

原创 關於在華爲手機上出現java.lang.SecurityException: Call from user 0 as user 132606 without permission的問題解決

最近在開發項目調試時,在華爲手機出現了一個很奇怪的問題,APP一啓動就會崩潰,在OPPO,小米的手機上卻沒有問題,報錯信息如下: 11-19 08:35:38.679 16804-16804/? E/AndroidRuntime: FAT

原创 Android Studio運行項目提示Edit configuration

在使用Android Studio過程中,如果改變了Build Variant,如改成release編譯,運行項目經常會遇到彈出Edit configuration的彈框,運行按鈕旁邊也會出現一個紅叉 這是因爲在build.gradle

原创 EditText常見操作之監聽鍵盤輸入和搜索動作

EditText如果要在鍵盤上顯示搜索按鈕,需要在xml中加入這個屬性:      android:imeOptions="actionSearch" 在代碼中添加EditText的搜索按鍵響應: EditText editText =

原创 小程序開發實現文字“展開更多”效果

最近在微信小程序界面開發中,經常遇到文字描述太多,UI設計師要求將文字收起,只留兩行文字,後面以省略號顯示,點擊“查看全部”可以展開更多,效果如下圖: 先貼上wxml中的代碼: <view class="cmty-desc {{fol

原创 Android寫一個通用的安全無內存泄漏的Handler

大家都知道,在很久之前,谷歌就發出警告This Handler class should be static or leaks might occur,不要在Activity中直接 new 一個Handler使用,因爲這樣創建Handle

原创 TabLayout的使用和自定義紅點消息提示

Tab+ViewPager可以說是Android開發中非常常見的佈局了,以前實現tab佈局一般使用LinearLayout或者HorizontalScrollView,還需要自己監聽ViewPager的滑動。如果想實現比較順滑的滑動效果,

原创 微信小程序開發遇到“Console is not defined”錯誤

報錯信息如下: ReferenceError: Console is not defined     at K.initDate (http://127.0.0.1:10978/appservice/pages/home/room/roo

原创 Android NDK開發筆記四:Java和c/c++的相互調用

       JNI的引入使java有了調用C/C++端代碼的能力,然而在JNI中還有 一個非常重要的內容,那就是在C/C++本地 代碼中訪問Java端的代碼,一個常見的應用就是獲取類的屬性和調用類的方法,爲了在C/C++中表示屬性和方法

原创 小程序View點擊響應傳遞多個參數

小程序開發中,view的點擊事件是通過bindtap綁定的,比如: <view class='pay-button' bindtap='gotoDetail' id='{{item.id}}'>查看詳情</view> 在js文件中是這

原创 Android圖片壓縮上傳和解決上傳服務器之後圖片旋轉的問題

Android圖片上傳是開發中最常見的應用場景,但是現在的手機攝像頭像素都非常高,隨便拍一張照片都在3~4M之間,分辨率也都在3000x4000左右,如此大的照片如果直接顯示或者上傳到服務器,體驗都是非常差的,所以圖片在上傳之前,一般要做

原创 友盟推送自定義通知聲音

友盟推送支持自定義通知聲音,在Android8.0以下,就很簡單: 在您項目的res/raw/下放置命名爲umeng_push_notification_default_sound。若無此文件,則默認使用系統的Notification聲

原创 Android JNI開發筆記三:靜態註冊和動態註冊

JNI的開發中,Java層的方法和C/C++層的函數之間的對應關係是通過註冊來實現的,要不然它怎麼知道java的方法到了c/c++去找哪個對應的方法呢?JNI的方法註冊分爲靜態註冊和動態註冊。 3.1 靜態註冊 靜態註冊使用Java_PA