- 完成第5天
[ -d ~/src/AOSP/ ] && cd ~/src/AOSP/
make -j1 adb 2>&1 |tee make.adb.log
export adb=$(find out/ -type -name "adb")
sudo $adb devices
插上android 手机,打开开发者模式
打开方式自行网络搜索找到自己手机品牌的打开方法
还有一点需要注意的是有的品牌比如小米,
通过 USB 安装应用需要单独打开,
或者需要单独点击弹窗允许。
然后后继续
sudo $adb install -r $(cat mmma.log|grep apk$|grep -w Install|cut -d':' -f2)
sudo $adb shell am start -n com.jianshu.blanchard/com.jianshu.blanchard.HelloWorldActivity
如果一切顺利,你将会看到类似下面的界面
android-hello-world-screen.png
尝试修改一点点
修改一下 layout 文件
[ -d ~/src/AOSP/packages/apps/HelloWorldApp ] && \
cd ~/src/AOSP/packages/apps/HelloWorldApp
mkdir -p mkdir -p src/com/jianshu/blanchard
cat>res/layout/activity_main.xml<<EOF
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".HelloWorldActivity">
<TextView
android:id="@+id/hello"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
EOF
相应的修改 src java 文件
[ -d ~/src/AOSP/packages/apps/HelloWorldApp ] && \
cd ~/src/AOSP/packages/apps/HelloWorldApp
mkdir -p mkdir -p src/com/jianshu/blanchard
cat>src/com/jianshu/blanchard/HelloWorldActivity.java<<EOF
package com.jianshu.blanchard;
import android.app.Activity;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.TextView
import java.util.*
class HelloWorldActivity extends AppCompatActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
android.util.Log.d("HelloWorldActivity", "Hello World");
}
}
试看看
mmma packages/apps/HelloWorldApp 2>&1 |tee mmma.log
sudo $adb install -r $(cat mmma.log|grep apk$|grep -w Install|cut -d':' -f2)
sudo $adb shell am start -n com.jianshu.blanchard/com.jianshu.blanchard.HelloWorldActivity
如果一切顺利,你将会看到类似本篇开头的界面
打完收工
sudo $adb shell am force-stop com.jianshu.blanchard
sudo $adb uninstall com.jianshu.blanchard
参考
https://www.jianshu.com/p/3ab98c8f54dc
https://developer.android.com/codelabs/android-training-hello-world
网友评论