android studio platform使用体验分享(as无法跳转c/c++等native源码的福音,强烈推荐)

news2024/12/23 8:46:16

hi,粉丝朋友们:
大家好!这些天粉丝朋友们分享了一下Android Studio for Platform 这个最新的google开发的阅读aosp源码的工具,特别适合做原生系统开发。具体官方介绍如下地址:
参考链接:https://developer.android.google.cn/studio/platform

1、android studio for platform工具介绍

在这里插入图片描述
可以直接点击下载(提示目前只有ubuntu可以哈,其他没有,所以说跟着马哥使用ubuntu开发还是有很大优势,尝鲜方便)

看看相关的官方介绍:

Android Studio for Platform (ASfP) is the version of the Android Studio IDE for Android Open Source Project (AOSP) platform developers who build with the Soong build system. ASfP includes the following features:

language
Multi-language Support
Edit C++, Kotlin, and Java programming languages in the same IDE.
settings
Project Setup Wizard
Configure your lunch target and platform modules.

官方的介绍就以上一小段文字,总结如下:
ASfP是专门用于开发aosp的ide工具,有着 Soong build system.,主要有以下几个特点
语言支持部分:
同时支持:C++, Kotlin, and Java 同时使用在ide中编程
设置部分:
可以配置你的编译target和具体的模块

2、android studio for platform痛点解决

这里最吸引我们的还是他居然支持多语言,c++,java,kotlin同时都支持。
以前我们开发aosp时候,其实java部分使用android studio的体验还是相当好,但是android studio没办法支持c++等native代码的跳转和代码提示,所以不得不使用vscode工具,这个vscode工具相关看c++等代码也是比较方便,基本上的代码也是可以跳转的,但是毕竟有时候需要两个工具相互切快捷键等还是有一点点不方便,虽然不太影响。

所以开发aosp之前的选择就是:
java相关代码使用android studio
c++相关代码使用vscode

目前ASfP工具出现真的是我们framework开发者的一个巨大福音,解决了android studio无法跳转c++代码的这个巨大痛点。

3、android studio for platform使用体验

官方使用介绍:



Get started with ASfP

    If you haven't already installed repo, follow the instructions at Installing Repo.
    If you haven't already initialized and synced your Repo checkout, follow the instructions at Initializing a Repo client.
    Download ASfP.
    Install ASfP: sudo dpkg -i /path/to/asfp-2023.1.1.19-linux.deb.
    Open ASfP from the command line: /opt/android-studio-for-platform/bin/studio.sh.
    Import your project by pointing to your repo checkout directory, specifying a lunch target, and selecting which modules you want to build.
    Click Finish and your project will begin syncing.
    Request to join our external group for user support.


这里我们就直接自己转化把
1、下载好工具,安装好即可以(限制在ubuntu)
在这里插入图片描述
在这里插入图片描述
可以直接点击安装的

2、启动工具
在terminator下面输入如下命令:
/opt/android-studio-for-platform/bin/studio.sh
就会启动工具

3、导入需要模块
在这里插入图片描述
这里导入了Launcher和framework
在这里插入图片描述
在这里插入图片描述

同步完成就一切都好了即可以查看相关代码和跳转。

ps使用的注意点:

1、跳转framework的类时候会跳到对应jar包的class文件,不是java文件,解决如下
在这里插入图片描述

2、KeyMap如果习惯eclipse的可以切换

3、如果导入c++相关开发建议以下3个文件夹:
frameworks
system
packages

导入越多整体就慢

总结体验:

整体体验和以前android studio没有大的差别
1、不过说实话单独java部分的代码开发的话,体验还不如以前的android studio轻量,反而依赖的东西太多,对于跳转等,查找代码还没有以前方便,针对java部分的话,这个建议可以先观望等更多版本更新稳定

2、c++部分的native代码,来说简直就利器,非常好用,跳转准确,非常值的推荐

google官方教学视频教程地址:
https://www.bilibili.com/video/BV1UV411P7nf/?vd_source=a8c604ee3ce4999324264828f8fd99d8

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1006385.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《动手学深度学习 Pytorch版》 4.6 暂退法

import torch from torch import nn from d2l import torch as d2l4.6.1 重新审视过拟合 整节理论,详见书本。 4.6.2 扰动的稳健性 整节理论,详见书本。 4.6.3 实践中的暂退法 整节理论,详见书本。 4.6.4 从零开始实现 def dropout_la…

《C和指针》笔记24: 指针和间接访问

本文主要讲指针和间接访问,标题对应《C和指针对应的章节》,引用的地方是自己写的一些注释、理解和总结。 指针、间接访问和左值 先回顾一下左值和右值 左值代表着一个位置。右值代表着一个值。赋值等号左边是个左值,赋值等号右边是一个右值…

fabirc 将图像绘制原点定为图形内部

添加元素时,设置属性: originX: center, originY: center, 如我定义两个矩形: addrect () { // 矩形1var rect new fabric.Rect({top: 50,left: 100,width: 100,height: 70,fill: #F56C6C,strokeUniform: true // 限制边框宽度缩放})canva…

vue2实现自定义主题webpack-theme-color-replacer

需求:根据element的自定义主题色,之后改变element的全局所有颜色,解决页面刷新后主题色失效问题,这个需要把颜色存入到浏览器的存储中,如果换个浏览器就得重新选择了哈,如果需要在不同的浏览器保持一致的主…

langchain主要模块(四):Memory

langchain2之Memory langchain1.概念2.主要模块模型输入/输出 (Model I/O)数据连接 (Data connection)链式组装 (Chains)代理 (Agents)内存 (Memory)回调 (Callbacks) 3.MemoryConversationBufferMemoryConversationBufferWindowMemoryConversationTokenBufferMemoryConversati…

Error: svn: E155004: Run ‘svn cleanup‘ to remove locks

解决办法如下:点击settings 点击清除缓存按钮,然后再使用svn进行提交更新操作,但是可能还会有其它的错误,比如svn: E230001: Server SSL certificate verification failed,解决这个错误请参考我另一篇文章:…

【LeetCode: 2596. 检查骑士巡视方案:深度优先搜索】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

力扣 -- 300. 最长递增子序列

解题步骤&#xff1a; 参考代码&#xff1a; class Solution { public:int lengthOfLIS(vector<int>& nums) {int nnums.size();vector<int> dp(n,1);int ret1;for(int i0;i<n;i){for(int j0;j<i;j){if(nums[j]<nums[i]){dp[i]max(dp[i],dp[j]1);}}r…

分布式系统第五讲:分布式事务及实现方案

分布式系统第五讲&#xff1a;分布式事务及实现方案 事务是一个程序执行单元&#xff0c;里面的所有操作要么全部执行成功&#xff0c;要么全部执行失败。而分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。本…

微服务07-认识MQ+RabbitMQ入门

1.前言 了解同步调用和异步调用 1.1.同步调用 比如这里的支付服务&#xff0c;需要等待订单服务、短信服务…执行完毕才能执行&#xff0c;这样支付整个流程完毕需要500ms 然后如果订单、仓储等其中一个服务挂掉了&#xff0c;那么支付服务请求请求不了&#xff0c;挂掉的服…

Python实现进制转换

1 问题 如何将一个数从十进制转换成二进制&#xff0c;这个数从键盘输入。 2 方法 &#xff08;1&#xff09;输入一个十进制的数; &#xff08;2&#xff09;将这个数除以2求商和余数 &#xff08;3&#xff09;再用2去除商&#xff0c;又会得到一个商和余数&#xff0c;如此进…

企业用设备管理系统有什么好处?的修大数据管理平台的功能强大吗?

在现代工业运营中&#xff0c;设备的高效管理与维护对于维持生产稳定及提升企业竞争力具有重大意义。而设备管理系统作为一项重要工具&#xff0c;可以极大地提高企业的生产效率与设备维护的准确性。 企业使用设备管理系统的原因如下&#xff1a;   提高设备利用率&#xff1…

小白自助发卡销售系统|支持自助选号批量购买Thinkphp6.0+Layui

小白自助发卡销售系统 本系统由小白独立开发thinkphp+layui 功能特色: 1.前台下单支持自助选号。 2.前台库存显示方案增加3种。 3.自定义商品图片。 4.支持邮件通知功能具体可到后台自行体验。 5.支持批量下单购买。 6.支持易支付接口(目前用的比较多) 7.支持批量导入卡密 8.P…

从0到1理解ChatGPT原理

目录 写在前面 1.Tansformer架构模型 2.ChatGPT原理 3.提示学习与大模型能力的涌现 3.1提示学习 3.2上下文学习 3.3思维链 4.行业参考建议 4.1拥抱变化 4.2定位清晰 4.3合规可控 4.4经验沉淀 机械工业出版社京东自购链接 写在前面 2022年11月30日&#xff0c;ChatG…

【数据结构】二叉树链式结构的实现(三)

目录 一&#xff0c;二叉树的链式结构 二&#xff0c;二叉链的接口实现 1&#xff0c;二叉链的创建 2&#xff0c;接口函数 3&#xff0c;动态创立新结点 4&#xff0c;创建二叉树 5&#xff0c;前序遍历 6&#xff0c;中序遍历 7&#xff0c;后序遍历 三&#xff0c;结点个…

嵌入式学习笔记(25)串口通信的基本原理

三根通信线&#xff1a;Tx Rx GND &#xff08;1&#xff09;任何通信都要有信息作为传输载体&#xff0c;或者有线的或则无线的。 &#xff08;2&#xff09;串口通信时有线通信&#xff0c;是通过串口线来通信的。 &#xff08;3&#xff09;串口通信最少需要2根&#xff…

“熊猫杯” | 赛宁网安获网络安全优秀创新成果大赛优胜奖

9月11日&#xff0c;四川省2023年国家网络安全宣传周正式启动。由四川省委网信办指导&#xff0c;中国网络安全产业联盟&#xff08;CCIA&#xff09;主办&#xff0c;成都信息工程大学、四川省网络空间安全协会承办的“2023年网络安全优秀创新成果大赛—成都分站赛(暨四川省‘…

Linux HTTP协议

目录 1.浏览器与服务器通信过程2.HTTP请求报头&#xff08;1&#xff09;HTTP的请求报头结构&#xff08;2&#xff09;HTTP的请求方法 3.HTTP应答报头&#xff08;1&#xff09;HTTP的应答报头结构&#xff08;2&#xff09; HTTP的应答状态 1.浏览器与服务器通信过程 浏览器…

小程序源码:多功能口袋工具箱微信小程序源码-带流量主|云开发(更新)

这里主要分享多功能口袋工具箱微信小程序源码&#xff0c;有带流量主&#xff0c;而且超多功能工具箱组合的微信小程序源码。无需服务器即可搭建&#xff0c;可以设置流量主赚取收益。 源码链接&#xff1a; 网盘源码 密码&#xff1a;hma8 工具箱的应用一览&#xff1a; 1…

部署kibana可视化平台

部署kibana可视化平台 案例版本&#xff1a;kibana 8.6.2 1、下载 去官网中查找与安装的ES版本一致的安装包&#xff1a;官网kibana下载。 可以选择自行下载好后放入服务器中进行安装&#xff0c;也可以使用wget下载&#xff1a; # 下载 cd /home/elasticsearch/kibana wge…