Motorola Droid 3

Motorola Droid 3
Motorola Droid 3
Motorola Droid 3
Motorola Droid 3

睇到摩記早年出android手幾『Droid 3』,側滑鍵盤設計,绝版手機. 買蒞測試android程式.

『Droid 3』設debug模式

  1. 撳『Settings』-> 『Applications』 -> 『Development』
  2. 撳『USB debugging』

Samsung開發人員模式

Samsung開發人員模式
Samsung開發人員模式
Samsung開發人員模式
Samsung開發人員模式

問老友借samsung平板程式調試, 首先著『開發人員模式』.

  1. 撳『設定』->『關於平板電腦』->『軟件資訊』
  2. 撳『內部版本號』柒下
  3. 撳『設定』->『開發人員模式』
  4. 著『USB偵錯』

Android Studio-Gradle連缐超時

Android Studio-Gradle連缐超時
Android Studio-Gradle連缐超時

随著『Android studio』更新版本,『Gradle』需升級.

  1. 『File』->『project Structure』
  2. 『Gradle version』揀新版本
  3. 撳右下角『Apply』自動下載.點知彈出『Connection timed out:』連缐超時.
  4. 编輯『Project\gradle\wrapper\gradle-wrapper.properties』
  5. 『distributionUrl』係『Gradle』升級包下載路徑.
https://services.gradle.org/distributions/gradle-8.2.1-bin.zip
  1. 『zipStorePath』係升級包擺放點『wrapper/dists』
  2. 下載後將『gradle-8.2.1-bin.zip』擺係.
C:\Users\admin\.gradle\wrapper\dists\gradle-8.2.1-bin\5hap6b9n41hkg4jeh2au2pllh\gradle-8.2.1-bin.zip

 

 

 

Connection timed out: no further information. If you are behind an HTTP proxy, please configure the proxy settings either in IDE or Gradle.

 

Android studio-gradle版本異常

Android studio-gradle版本異常
Android studio-gradle版本異常

Android studio近日彈出gradle版本晤兼容.修改工程配置. 如果唔得重裝『Android Studio』.

  1. 撳『HELP』->『ABOUT』. 『Android Studio版本』确定『Gradle插件版本』
Android Studio版本 Android Gradle Plugin Version插件版本
Hedgehog | 2023.1.1 3.2~8.2
Giraffe | 2022.3.1 3.2~8.1
Flamingo | 2022.2.1 3.2~8.0
Electric Eel | 2022.1.1 3.2~7.4
Dolphin | 2021.3.1 3.2~7.3
  1. 撳『File』->『project Structure』
  2. 『Gradle version』揀版本
Android Gradle Plugin Version插件版本 Gradle Version
8.1 8.0
8.0 8.0
7.4 7.5
7.4 7.4
7.2 7.3.3
7.1 7.2
7.0 7.0
4.2.0+ 6.7.1
  1. 撳右下角『Apply』自動下載.
The project is using an incompatible version (AGP 8.1.0) of the Android Gradle plugin. Latest supported version is AGP 8.0.0

 

Android Studio-ZLIB壓縮同解壓

Android Studio-ZLIB壓縮同解壓
Android Studio-ZLIB壓縮同解壓

ZLIB』開源『壓縮』同『解壓』程式庫, 支持『DEFLATE』冇損壓縮算法,佢混合『LZ77算法』同『霍夫曼編碼』.

『DEFLATE』壓縮算法冇專利權.畀人大量應用係『網络』『圖檔』『文檔』『影片』.

.PNG/ Libpng 圖檔解壓
.ZIP 壓縮檔
.tar 壓縮檔
.gz 壓縮檔
HTTP 壓縮傅送
FFmpeg 影片解壓

下载『ZLIB

http://www.zlib.net/
http://www.zlib.net/zlib-1.2.13.tar.gz

『Android studio』內置『ZLIB』, 唔使下載.但要係『CMakeLists.txt』增添『zlib』庫.

CMakeLists.txt文檔  
find_library( z-lib z ) 搜索zlib
target_link_libraries( ${z-lib} ) 連接zlib

包含『ZLIB』頭文檔

#include <zlib.h> Zlib-api
#include <zconf.h>  

『z_stream』壓縮同解壓皆需此結构體

z_stream stream; zlib流結构體
stream.zalloc = Z_NULL; NULL用默認記憶體分配函数
stream.zfree  = Z_NULL; NULL用默認記憶體释放函数
stream.opaque = Z_NULL;  
stream.next_in  = (Bytef*)sour; 蒞源
stream.avail_in = (uInt)sour_length; 蒞源長
stream.next_out = dest; 輸出
stream.avail_out = (uInt)*dest_length; 輸出長

ZLIB』壓縮分叁步

壓縮  
deflateInit(&stream, level) 分配記憶體,level壓縮等級
deflate(&stream, flush); 壓縮數據, flush設0
deflateEnd(&stream); 释放記憶體

 

int deflateInit2( deflateInit()加强版
z_streamp strm, zlib流結构體
int  level, level壓縮等級0~9.

0:速度快,唔壓縮.

9:速度慢,壓縮率高.

int  method, 壓縮算法僅支緩Z_DEFLATED
int  windowBits, 處理RAW DEFLATE手法.
int  memLevel, 指定記憶體分配MAX_MEM_LEVEL
int  strategy)); 壓縮策略,僅影響壓縮比.默認Z_DEFAULT_STRATEGY

 

level 壓縮等級
#define Z_NO_COMPRESSION         0 唔壓縮
#define Z_BEST_SPEED             1 高速,低壓縮率
#define Z_BEST_COMPRESSION       9 高壓縮率, 慢速
#define Z_DEFAULT_COMPRESSION  (-1) 默認壓縮

 

windowBits 處理RAW DEFLATE手法.
8~15: 純deflate壓縮
-8~-15: zlib頭 + deflate + zlib尾
> 16: Gzip頭+ deflate + Gzip尾

 

method 壓縮算法
#define Z_DEFLATED   8 DEFLATE冇損壓縮

 

memLevel 記憶體分配
MemLevel=1 最小記憶體,速度慢壓縮比低
MemLevel=9

#define MAX_MEM_LEVEL 9

最大記憶體,最佳速度
MemLevel=8 默認值

 

strategy 壓縮算法設定
#define Z_FILTERED            1 僅FILTERED生成數據
#define Z_HUFFMAN_ONLY        2 僅霍夫曼編碼
#define Z_RLE                 3 匹配長度=1
#define Z_FIXED               4 禁霍夫曼編碼
#define Z_DEFAULT_STRATEGY    0 默認壓縮設定

ZLIB』解壓分叁步

解壓  
inflateInit(&stream) 分配記憶體
inflate(&stream, Z_NO_FLUSH); 解压數據
inflateEnd(stream); 释放記憶體

 

返回碼  
#define Z_OK            0  
#define Z_STREAM_END    1 結束
#define Z_NEED_DICT     2 愛密碼
#define Z_ERRNO        (-1)  
#define Z_STREAM_ERROR (-2)  
#define Z_DATA_ERROR   (-3) 加密數據損壞壞,或缺失.
#define Z_MEM_ERROR    (-4) 唔够記憶體
#define Z_BUF_ERROR    (-5) 唔够緩存
#define Z_VERSION_ERROR (-6)  

 

解壓示例

int Uncompress(PBYTE dest,int * dest_length,PBYTE sour,int sour_length)

{

z_stream stream;

int ret;

stream.zalloc = (alloc_func)0;

stream.zfree  = (free_func)0;

stream.opaque = (voidpf)0;

stream.next_in  = (Bytef*)sour;

stream.avail_in = (uInt)sour_length;

stream.next_out = dest;

stream.avail_out = (uInt)*dest_length;

MAX_MEM_LEVEL

ret = inflateInit2(&stream, 16+MAX_WBITS);

if (ret != Z_OK)

return ret;

 

ret = inflate(&stream, Z_NO_FLUSH);// 解压

*dest_length = stream.total_out;

inflateEnd(&stream);

return ret;

}

 

壓缩示例

bool Compress(PBYTE dest,int * dest_length,PBYTE sour,int sour_length, int level)

{

int ret, flush;

int sour_offset,dest_offset;

int have;

z_stream stream;

BYTE in[ZIP_CHUNK];

BYTE out[ZIP_CHUNK];

 

stream.zalloc = Z_NULL;// 内存分配函数

stream.zfree  = Z_NULL;// 内存释放函数

stream.opaque = Z_NULL;

stream.next_in  = (Bytef*)sour;

stream.avail_in = (uInt)sour_length;

stream.next_out = dest;

stream.avail_out = (uInt)*dest_length;

 

ret = deflateInit(&stream, level);// 内存分配

if (ret != Z_OK)

return false;

 

ret = deflate(&stream, flush);  // 进行压缩

*dest_length = stream.total_out;

 

deflateEnd(&stream);// 释放内存

return ret;

}

Android studio-『C/C++ Language Support』

Android studio-『C/C++ Language Support』
Android studio-『C/C++ Language Support』

『Android studio』死機後,點唔開『.CPP/.C』文檔. 連落斷點都.發視『C/C++ Language Support』畀ANDROID禁用Disabled.

  1. 撳『File』->『Settings』
  2. 撳『Settings』->『Plugins』
  3. 撳『Installed』->『C/C++ Language Support』
  4. 撳『Enabled』著 C++插件

Android studio-Image Asset自動生成背景透明圖檔

Android studio-Image Asset自動生成背景透明圖檔
Android studio-Image Asset自動生成背景透明圖檔
Android studio-Image Asset自動生成背景透明圖檔
Android studio-Image Asset自動生成背景透明圖檔

『Android studio』內置架餐『Image Asset』. 畀幅圖檔佢,『Image Asset』帮你自動生成各式圖檔.

揀『Launcher Icons(Legacy only)』冚辦闌圖檔背景透明.

『Android 8.0』及以上,程式圖檔强制背景色,揀『Launcher Icons(Adaptive and Legacy)』.

Android 8.0及以上 圖檔背景白色 Launcher Icons(Adaptive and Legacy)
Android 7.1及以下 圖檔背景透明 Launcher Icons(Legacy only)
  1. 揀『Project』->『app』
  2. 撳『File』->『New』->『Image Asset』
  3. 設置『Asset Studio』
Configure Image Asset Android 8.0(API 26) 及以上
Icon type Launcher Icons(Adaptive and Legacy)
Name ic_launcher
Layer name ic_launcher_foreground
Asset type Image
path 『.png』背景透明圖檔
Trim 修剪勾yes
Resize 100%
Asset type 勾Color
Color 0xFFFFFF

 

Configure Image Asset Android 7.1以下
Icon type Launcher Icons(Legacy only)
Name ic_launcher
Asset type 勾Image
Path 『.png』背景透明圖檔
Trim 修剪勾yes
Padding 0%
Background 背景0xFFFFFF
Scaling Crop/ Shrink to fit自适应宽度
Shape 揀None
Effect 勾None

 

 

資料夾 Size(px)
mipmap-xxxhdpi 192*192
mipmap-xxhdpi 144*144
mipmap-xhdpi 96*96
mipmap-hdpi 72*72
mipmap-mdpi 48*48

 

Android Studio-Cannot load settings from file『misc.xml』

Android Studio-Cannot load settings from file『misc.xml』
Android Studio-Cannot load settings from file『misc.xml』

Android Studio係右下角彈出警示,『Cannot load settings from file』冇法載入『misc.xml』,事實係文檔損毁.內容大致如下.粘貼後諸存.

『misc.xml』文檔
<?xml version=”1.0″ encoding=”UTF-8″?>

<project version=”4″>

<component name=”ProjectRootManager” version=”2″ languageLevel=”JDK_17″ default=”true” project-jdk-name=”Android Studio default JDK” project-jdk-type=”JavaSDK”>

<output url=”file://$PROJECT_DIR$/build/classes” />

</component>

<component name=”ProjectType”>

<option name=”id” value=”Android” />

</component>

</project>

 

Load settings
Cannot load settings from file
“D:\ANDROID\GeomanticCompass\.idea\misc.xml”;illegal character(NULL,Unicode 0) encountered: not valid in any content at[row,col{unknown-source}]:[1,2] Please correct the file content

 

Android Studio丟失鍵盤映射『Missing keymap』

Android Studio丟失鍵盤映射『Missing keymap』
Android Studio丟失鍵盤映射『Missing keymap』

『Android Studio』冇拉拉丟失鍵盤映射『Missing keymap』『Cannot find keymap “Windows Proper Redo” 』.

重新設鍵盤映射.

  1. 撳『File』->『Settings』
  2. 撳『Keymap』->『Eclipse』
  3. 撳『Apply』
Missing keymap
Cannot find keymap “Windows Proper Redo”
Search for Windows Proper Redo Keymap plugin

 

Android Studio閃退

Android Studio閃退
Android Studio閃退

Android studio冇拉拉閃退,聽人地話掹網線得,真係冇閃退,其實wifi仲連住網.