repo sync 常常會不正常斷線,這個 script 可以不斷自動重試
#!/bin/bash
while true
do
if repo sync
then
echo "repo sync successfully."
break
else
echo "repo sync failed. retry..."
repo sync
fi
done
2015年10月19日 星期一
[Android][SystemUI] 改變狀態欄電池狀態的幾種方法
1. 使用 demo mode
https://github.com/android/platform_frameworks_base/blob/marshmallow-release/packages/SystemUI/docs/demo_mode.md
adb shell settings put global sysui_demo_allowed 1
adb shell am broadcast -a com.android.systemui.demo -e command battery -e level 0 -e plugged false
https://github.com/android/platform_frameworks_base/blob/marshmallow-release/packages/SystemUI/docs/demo_mode.md
adb shell settings put global sysui_demo_allowed 1
adb shell am broadcast -a com.android.systemui.demo -e command battery -e level 0 -e plugged false
2. 發 battery change,但是很容易被改掉
adb shell am broadcast -a android.intent.action.BATTERY_CHANGED --ei level 9
adb shell am broadcast -a android.intent.action.BATTERY_CHANGED --ei level 9
3. 直接改 driver ,利用 存取節點,這個方法的好處是,連系統狀態都會猶如低電量
echo 10 > /sys/class/power_supply/battery/capacity
echo 10 > /sys/class/power_supply/battery/capacity
2015年10月7日 星期三
2015年10月1日 星期四
[Android] 如何在中國手機裝 GMS (Google mobile services)
以 Android L 手機為例子
1. adb push com.google.android.maps.jar system/framework/
2. adb push com.google.android.maps.xml system/etc/permissions/
3. adb shell
cd system/priv-app/
mkdir GoogleServicesFramework
adb push GoogleServicesFramework.apk system/priv-app/GoogleServicesFramework/
4. adb shell
cd system/priv-app/
mkdir GooglePlay
(Google Play app) adb push Vending.apk system/priv-app/GooglePlay/Vending.apk
5. (Google Play Service) adb install com.google.android.gms-8.1.15_(2250156-846)-8115846-minAPI19
6. adb install GoogleCalendarSyncAdapter
7. adb install GoogleContactsSyncAdapter
這樣就有 Google 的軟體服務可以用了
1. adb push com.google.android.maps.jar system/framework/
2. adb push com.google.android.maps.xml system/etc/permissions/
3. adb shell
cd system/priv-app/
mkdir GoogleServicesFramework
adb push GoogleServicesFramework.apk system/priv-app/GoogleServicesFramework/
4. adb shell
cd system/priv-app/
mkdir GooglePlay
(Google Play app) adb push Vending.apk system/priv-app/GooglePlay/Vending.apk
5. (Google Play Service) adb install com.google.android.gms-8.1.15_(2250156-846)-8115846-minAPI19
6. adb install GoogleCalendarSyncAdapter
7. adb install GoogleContactsSyncAdapter
這樣就有 Google 的軟體服務可以用了
2015年7月3日 星期五
[Android] 如何弄 account
http://blog.udinic.com/2013/04/24/write-your-own-android-authenticator/
這篇寫得很完整
我不用多說了
這篇寫得很完整
我不用多說了
2015年6月29日 星期一
[Android]如何從 APK 拿到 SHA1 key
解開 apk 檔案取得
META-INF\CERT.SF
META-INF\CERT.SF
keytool -printcert -file CERT.RSA就可得到如下結果
擁有者: EMAILADDRESS=oneplus@oneplus.cn, CN=OnePlus, OU=SW, O=OnePlus, L=Shenzhen, ST=Guangdong, C=CN
發出者: EMAILADDRESS=oneplus@oneplus.cn, CN=OnePlus, OU=SW, O=OnePlus, L=Shenzhen, ST=Guangdong, C=CN
序號: 8abe4e1ae1d847f1
有效期自: Thu May 07 15:25:19 CST 2015 到: Mon Sep 22 15:25:19 CST 2042
憑證指紋:
MD5: 62:08:F4:ED:35:9F:F6:60:43:A0:31:A7:A7:9B:F6:06
SHA1: B7:91:45:D7:9F:8F:14:C2:6C:68:EC:BB:27:8D:56:AE:43:65:B1:61
SHA256: 46:81:AD:50:CA:FC:58:0E:DF:E0:27:BD:3F:E5:93:25:4E:72:CD:2D:EF:1B:35:1F:EA:30:6C:CF:62:20:CF:07
簽章演算法名稱: SHA1withRSA
版本: 3
擴充套件:
#1: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 54 61 E2 B1 A9 15 E1 4D 9F 0F 92 DD 48 01 13 31 Ta.....M....H..1
0010: A8 49 AE 64 .I.d
]
]
#2: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[
CA:true
PathLen:2147483647
]
#3: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 54 61 E2 B1 A9 15 E1 4D 9F 0F 92 DD 48 01 13 31 Ta.....M....H..1
0010: A8 49 AE 64 .I.d
]
]
2015年6月14日 星期日
[Android]產生keystore
release:
$ keytool -genkey -v -keystore my-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
debug:
$ keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000
get release finger print:
$ keytool -list -v -keystore [keystore path] -alias [alias-name] -storepass [storepass] -keypass [keypass]
get debug finger print:
$ keytool -list -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android
$ keytool -genkey -v -keystore my-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
debug:
$ keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000
get release finger print:
$ keytool -list -v -keystore [keystore path] -alias [alias-name] -storepass [storepass] -keypass [keypass]
get debug finger print:
$ keytool -list -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android
訂閱:
文章 (Atom)