2024年Android最新Android 12 第一次运行就报错(1),2024年最新被阿里面试官征服了

本文讨论了Android程序员面临的职业挑战,强调35岁左右是技能升级的关键时期。作者提倡有计划的学习和系统化的知识体系,以防止技术过时。同时,文章鼓励读者加入技术交流社区,共同成长,抵御行业风险。
摘要由CSDN通过智能技术生成

结语

看到这篇文章的人不知道有多少是和我一样的Android程序员。

35岁,这是我们这个行业普遍的失业高发阶段,这种情况下如果还不提升自己的技能,进阶发展,我想,很可能就是本行业的职业生涯的终点了。

我们要有危机意识,切莫等到一切都成定局时才开始追悔莫及。只要有规划的,有系统地学习,进阶提升自己并不难,给自己多充一点电,你才能走的更远。

千里之行始于足下。这是上小学时,那种一元钱一个的日记本上每一页下面都印刷有的一句话,当时只觉得这句话很短,后来渐渐长大才慢慢明白这句话的真正的含义。

有了学习的想法就赶快行动起来吧,不要被其他的事情牵绊住了前行的脚步。不要等到裁员时才开始担忧,不要等到面试前一晚才开始紧张,不要等到35岁甚至更晚才开始想起来要学习要进阶。

给大家一份系统的Android学习进阶资料,希望这份资料可以给大家提供帮助。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

<activity android:name=“.actvitiy.SchemeActivity”

android:exported=“true”

是的你没看错 Main Activity也要加这个。接下来咱们看看官方给出答案。

android:exported

================

此元素设置Activity是否可以由其他应用程序的组件启动:

  • 如果是"true",则任何应用都可以访问该Activity,并且可以通过其确切的类名启动。

  • 如果为"false",则Activity只能由相同应用程序的组件、具有相同用户 ID 的应用程序或特权系统组件启动。这是没有意图过滤器时的默认值。

如果你应用中的 Activity 包含 < intent-filter>,请将此元素设置为 “true”,以允许其他应用启动它。例如,如果Activity是应用程序的Main Activity并包含category:“android.intent.category.LAUNCHER”。

如果此元素设置为"false"并且应用程序尝试启动该活动,则系统会抛出一个 ActivityNotFoundException.

此属性不是限制活动暴露于其他应用程序的唯一方法权限还可用于限制可以调用 Activity 的外部实体(请参阅 permission 属性)。

不信邪的我果断修改代码进行尝试

<activity android:name=“.actvitiy.MainActivity”

android:exported=“false”

果然崩了,但是系统跑出来的不是 ActivityNotFoundException

日志如下:

2021-10-14 01:38:52.623 1219-1219/com.google.android.apps.nexuslauncher E/BaseDraggingActivity: Unable to launch. tag=AppInfo(id=-1 type=APP container=# com.android.launcher3.logger.LauncherAtom$ContainerInfo@1a1bf6a targetComponent=ComponentInfo{com.scc.demo/com.scc.demo.actvitiy.MainActivity} screen=-1 cell(-1,-1) span(1,1) minSpan(1,1) rank=0 user=UserHandle{0} title=ShuaiCiDemo componentName=ComponentInfo{com.scc.demo/com.scc.demo.actvitiy.MainActivity}) intent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.scc.demo/.actvitiy.MainActivity bnds=[1124,1039][1393,1376] }

java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.scc.demo/.actvitiy.MainActivity bnds=[1124,1039][1393,1376] } from ProcessRecord{ae07060 1219:com.google.android.apps.nexuslauncher/u0a128} (pid=1219, uid=10128) not exported from uid 10146

at android.os.Parcel.createExceptionOrNull(Parcel.java:2425)

at android.os.Parcel.createException(Parcel.java:2409)

at android.os.Parcel.readException(Parcel.java:2392)

at android.os.Parcel.readException(Parcel.java:2334)

at android.app.IActivityTaskManager S t u b Stub StubProxy.startActivity(IActivityTaskManager.java:2284)

at android.app.Instrumentation.execStartActivity(Instrumentation.java:1743)

at android.app.Activity.startActivityForResult(Activity.java:5404)

at com.android.launcher3.Launcher.startActivityForResult(SourceFile:2)

at com.android.launcher3.BaseQuickstepLauncher.startActivityForResult(SourceFile:6)

at android.app.Activity.startActivity(Activity.java:5744)

at com.android.launcher3.BaseDraggingActivity.startActivitySafely(SourceFile:14)

at com.android.launcher3.Launcher.startActivitySafely(SourceFile:6)

at com.android.launcher3.uioverrides.QuickstepLauncher.startActivitySafely(SourceFile:2)

at com.android.launcher3.touch.ItemClickHandler.startAppShortcutOrInfoActivity(SourceFile:14)

at com.android.launcher3.touch.ItemClickHandler.onClick(SourceFile:11)

at com.android.launcher3.touch.ItemClickHandler.b(Unknown Source:0)

at O0.f.onClick(Unknown Source:0)

at android.view.View.performClick(View.java:7441)

at android.view.View.performClickInternal(View.java:7418)

最后

**要想成为高级安卓工程师,必须掌握许多基础的知识。**在工作中,这些原理可以极大的帮助我们理解技术,在面试中,更是可以帮助我们应对大厂面试官的刁难。


网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 29
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值