【Android的启动流程-第一篇】教程文章相关的互联网学习教程文章

【Android】service启动dialog【代码】

从service调用dialog需要权限<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />示例代码Dialog dialog = new AlertDialog.Builder(ctx).create(); dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); dialog.show();注意事项当activity不在前台的时候,部分手机(比如小米2s,系统4.1.1)不支持直接弹出dialog,之后在显示activity之后,才会看到dialog。原文:http://my.osch...

(转)从android一个apk中启动第三方apk应用

从android一个apk中启动第三方apk应用 我们在开发中,经常遇到遇到在一个apk中要去运行另外一个apk,就像我们windows一样,搞一个快捷方式一样,那怎么实现呢? 问题的核心点在于我们要拿到第三方apk的package名称跟class名称,这两个至关重要!比如笔者做测试用的qq apk,package名称是com.tencent.pad.qq,class名称是com.tencent.pad.qq.login.QQLoginActivity。从一个apk启动到另外一个apk,当然也是通过发送i...

Android Studio 2.3版本 Run项目不能自动启动APP的问题 (转)【图】

参考: http://blog.csdn.net/lucasey/article/details/61071377Android Studio 升级到2.3版本后 运行项目后,只是安装上了,而APP不能自动打开;看到官方解释:Known issue: Some device manufacturers block apps from automatically launching after being installed on the device. When deploying your app to a physical device using Android Studio 2.3, this restriction breaks the intended behavior of Instant Run an...

Android在一个APP中通过包名或类名启动另一个APP

开发有时需要在一个应用中启动另一个应用,比如Launcher加载所有的已安装的程序的列表,当点击图标时可以启动另一个应用。一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动:Intent intent = new Intent(Intent.ACTION_MAIN);intent.addCategory(Intent.CATEGORY_LAUNCHER); ComponentName cn = new ComponentName(packageName, className); intent.setComponent(cn);s...

Android 外部启动activity,自定义action,action常量大全

从任意app,启动另外一个app的activity:1. Intent i = new Intent(); ComponentName cn = new ComponentName("com.book.android2", "com.book.android2.AndroidSearch"); i.setComponent(cn); i.setAction("android.intent.action.MAIN"); startActivity(i); //or startActivityForResult(i, RESULT_OK); 我用这种方法时,绝大部分应用可以启动,但是像RootExplorer却无法启动,出现FC对话...

android插件化-apkplug框架启动-02

本文章基于apkplug v1.6.7 版本编写,最新方式以官网最新消息为准 一 apkplug框架所需要的库文件(宿主) 可从http://git.oschina.net/plug/apkplugSDK 获取最新库文件 同时可下载最新的apkplugdemo源码 http://git.oschina.net/plug/apkplugDemos libs-- --libndkfoo.so armeabi armeabi-v7a mips x86 --Bundle(版本号).jar 将以上的文件加入宿主应用的libs目录下 二 AndroidManifest.xml 权限...

Android中Activity的四种启动方式

谈到Activity的启动方式必须要说的是数据结构中的栈。栈是一种只能从一端进入存储数据的线性表,它以先进后出的原则存储数据,先进入的数据压入栈底,后进入的数据在栈顶。需要读取数据的时候就需要从顶部开始读取数据,栈具有记忆功能,对栈的操作不需要指针的约束。在Android中Activity的显示其实就是一个入栈和出栈的过程。当打开一个Activity的时候Activity入栈,当关闭一个Activity的时候Activity出栈,用户操作的Activity位于...

Android Activity生命周期与启动模式【代码】

Activity的完整生命周期如下图:Activity的加载模式有四种:standard: 标准模式,默认的加载模式,每次通过这种模式启动目标Acitivity,都创建一个新的实例,并将该Activity添加到当前栈中。singleTop: 与标准模式类似,只有当Activity位于Task顶时,系统不会重新创建目标Activity的示例,而是直接复用已有的Activity实例。singleTask:   如果要启动的Activity不存在,系统创建Activity实例,并将它加入栈顶  如果将启动的Acti...

Android的学习之路(三)项目的启动过程和安装过程详解

应用的安装和启动过程: 安装:第一步:java的编译器会把这个.java文件编译成.class文件 第二部:Android的SDK提供了一个dx工具,这个工具把.class文件转义成.dex文件 第三部:打包操作,把.dex文件和资源文件进行打包,打包成一个压缩文件,然后进行签名。最后就打包成为了.apk文件 第四部:调用adb指令:adb install c:/x.apk安装到模拟器 具体过程:.JAVA---->.class--.dx-->.dex--->打包签...

android冷启动优化【代码】

android冷启动优化1. 什么是冷启动冷启动指的是应用第一次启动或者应用被杀死(不在内存中)后又一次启动的情况。 你可能已经发现了,这样的情况下启动时间会稍长一点。由于它会又一次初始化资源(Application等)。app启动时一般会在Application或者所谓的SplashActivity中做初始化工作。假设Application中的工作过多的话。 那么当冷启动的时候。就会出现白屏情况。由于此时SplashActivity还没有被初始化。SplashActivity上的图片还...

android 22 启动带2个action值的预定义acticity【代码】【图】

main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><Buttonandroid:id="@+id/btn1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="按Action值1启动目标Activity"/><Buttonandroid:id="@+id/btn2"android:layout_width="wrap_content"android:la...

Android 系统启动不起原因查找

我们遇到Android系统开机界面(bootanimation)后,系统没法运行起来的问题,系统一直出现 waiting for ...日志似乎在等什么服务启动因此怀疑system server 被block了调试方法如下:1. adb shell mkdir /data/anr/2. adb shell ps | grep system_serversystem 1138 234 908376 39440 ffffffff 40061a54 S system_server3. adb shell kill -3 11384. adb shell pull /data/anr/trace.txt----- pid 1138 at 2014-01-01 08:40:4...

Android adb 无法启动或者启动后关联不到模拟器问题

以前我遇到这类问题,只知道是需要关闭手机助手文件,今天找了找资料,发现这是端口占用问题,解决办法:cmd》》netstat -ano | findstr "5037"之后筛选出列表,只需要查看被占用的端口(pid=0的不用管): C:\Users\Administrator>netstat -ano | findstr "5037" TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 9660 TCP 127.0.0.1:5037 127.0.0.1:56036 ESTABLISHED 9660 T...

Android-启动另一个app【代码】

直接上代码:// 通过包名获取要跳转的app,创建intent对象Intent intent = getPackageManager().getLaunchIntentForPackage("cn.easier.intelligencesystem");// 这里如果intent为空,就说名没有安装要跳转的应用嘛if (intent != null) {// 这里跟Activity传递参数一样的嘛,不要担心怎么传递参数,还有接收参数也是跟Activity和Activity传参数一样 startActivity(intent);} else {// 没有安装要跳转的app应用,...

Android基于mimeType的关联打开启动

根据打开文件的类型不同启动不同的activity1、假如我们要关联所有的文件则需要在AndroidManifest中这么写<intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><data android:mimeType="*/*" ></data> </intent-filter> 2、根据mimeType启动不同的activity String mimeType = i...