美文网首页android framework
android framework 升级第6天

android framework 升级第6天

作者: Blanchard | 来源:发表于2021-01-27 22:35 被阅读0次
google.traing.hello.png
[ -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

相关文章

网友评论

    本文标题:android framework 升级第6天

    本文链接:https://www.haomeiwen.com/subject/epdzzktx.html