activity

android 百度地图定位开发2

浪子不回头ぞ 提交于 2020-02-28 22:37:48
先下载了示例代码 进行配置(可查看开发 指南 Hello BaiDuMap) 第一步:创建并配置工程(具体方法参见工程配置部分的介绍); 第二步:在AndroidManifest中添加开发密钥、所需权限等信息; (1)在application中添加开发密钥 <application> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="开发者 key" /> </application> 2)添加所需权限 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /> <uses-permission android:name="android.permission.WAKE_LOCK"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

android 基础一 <intent-filter>

走远了吗. 提交于 2020-02-28 00:33:11
<intent-filter> <intent-filter android:icon="drawable resource" android:label="string resource" android:priority="integer" > <action> <category> <data> </intent-filter> 过滤器 priority:优先级默认是0,数字遇到优先级越高 <action> <action android:name="string" /> 动作 1.<intent-filter>元素必须包含一个或多个<action>元素 2.对于定义的操作,最好使用应用程序的包名作为前缀,以确保惟一性 <category> <category android:name="string" /> 类别 1.为了接收隐式意图,您必须在意图过滤器中包含CATEGORY_DEFAULT类别 2.方法startActivity()和startActivityForResult()将所有意图视为声明了CATEGORY_DEFAULT类别。 如果您没有在intent过滤器中声明它,就不会有隐式intent解析到您的活动。 3.自定义类别应该使用包名作为前缀,以确保它们是惟一的。 android.intent.category.ALTERNATIVE :activity

Android中目的地Intent的使用

一笑奈何 提交于 2020-02-27 23:53:39
一、什么是Intent? Intent的中文意思是目的。在Android中也是“目的”的意思。就是我们要去哪里,从这个activity要前往另一个Activity就需要用到Intent。 示例代码一: 1: //定义一个Intent 2: Intent intent = new Intent(IntentDemo. this , AnotherActivity2. class ); 3: //启动Activity 4: startActivity(intent); 以上示例代码的作用是从IntentDemo这个activity切换到AnotherActivity2。这是Intent其中一种构造方法,指定两个Activity。为什么需要指定两个活动呢?因为在Android中有一个活动栈,这样的构造方式才能确保正确的将前一个活动压入栈中,才能在触发返回键的时候活动能够正确出栈。 注意:所有的Activity都必须先在AndroidManifest.xml里面配置声明。一下为本文用到的程序配置文件 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.halzhang.android.intent"

Android开发——Intent

醉酒当歌 提交于 2020-02-27 23:53:14
一、什么是Intent? Intent的中文意思是目的。在Android中也是“目的”的意思。就是我们要去哪里,从这个activity要前往另一个Activity就需要用到Intent。 示例代码一: 1: //定义一个Intent 2: Intent intent = new Intent(IntentDemo.this, AnotherActivity2.class); 3: //启动Activity 4: startActivity(intent); 以上示例代码的作用是从IntentDemo这个activity切换到AnotherActivity2。这是Intent其中一种构造方法,指定两个Activity。为什么需要指定两个活动呢?因为在Android中有一个活动栈,这样的构造方式才能确保正确的将前一个活动压入栈中,才能在触发返回键的时候活动能够正确出栈。 注意:所有的Activity都必须先在AndroidManifest.xml里面配置声明。一下为本文用到的程序配置文件 1: <?xml version="1.0" encoding="utf-8"?> 2: <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3: package="com.halzhang.android

intent Filter

和自甴很熟 提交于 2020-02-27 23:45:15
intent Filter 一、介绍 如果一个 Intent 请求在一片数据上执行一个动作, Android 如何知道哪个应用程序(和组件)能用来响应这个请求呢? Intent Filter就是 用来注册 Activity 、 Service 和 Broadcast Receiver 具有能在某种数据上执行一个动作的能力。 使用 Intent Filter ,应用程序组件告诉 Android ,它们能为其它程序的组件的动作请求提供服务,包括同一个程序的组 件、本地的或第三方的应用程序。 为了注册一个应用程序组件为 Intent 处理者,在组件的 manifest 节点添加一个 intent-filter 标签。 在 Intent Filter 节点里使用下面的标签(关联属性),你能指定组件支持的动作、种类和数据: 1.动作测试 <intent-filter>元素中可以包括子元素<action>,比如: view source print ? 1. < intent-filter > 2. < action android:name="com.example.project.SHOW_CURRENT" /> 3. < action android:name="com.example.project.SHOW_RECENT" /> 4. < action android:name=

Android悬浮窗的坑

[亡魂溺海] 提交于 2020-02-27 19:56:16
前言 重构了公司的一个项目,有一处用到了悬浮窗,就是程序后台运行后,悬浮窗依然可以显示到界面上。重构完准备上线,后来发现在6.0手机上有问题,无法显示,百般对比重构之前的代码,总感觉没什么不一样了呀,为什么别人代码写乱七八糟的都可以,我的写么好竟然不行。花了好多时间,百度什么的也找不到原因,真的是花了好多时间才找到了原因,这里记录一下解决问题的思路。 悬浮窗在Android6.0的坑 我有个解决问题的技巧就是写个小Demo,这样就没有其他不相关的代码,Demo里只写关于悬浮窗的代码,新建一个项目,语言选Kotlin,最小SDK为15,其它都默认,我用的是最新版本的AndroidStudio,什么Gradle什么鬼的都是更新到了最新的,项目创建好之后打开MainActivity,写代码,如下: class MainActivity : AppCompatActivity ( ) { override fun onTouchEvent ( event : MotionEvent ) : Boolean { if ( event . action == MotionEvent . ACTION_DOWN ) { val button = Button ( this ) . apply { text = "你好" ; setOnClickListener { Toast .

Android Studio 如何运行单个activity

混江龙づ霸主 提交于 2020-02-27 10:43:36
•写在前面   调试界面运行单个 activity 可节省编译整个项目的时间提高效率;   本着提高效率的角度,特地上网百度相关知识; •解决方法   首先,在 $AndroidManifest.xml$ 文件中,找到你创建 $activity$ 时添加的语句;   例如,我在创建 CircleActivity 时,$AndroidManifest.xml$ 中会自动为我添加代码:     $<activity\ android:name=".CircleActivity"\ />$   然后,我在这个语句里添加如下代码: android:exported="true";     <activity android:name=".CircleActivity" android:exported="true"></activity>   按照这个方法,在每个 .xxxActivity 语句中都添加这句话;   然后,右击你想要启动的 activity,选择 'Run xxxActivity' 选项即可启动这个 activity;   以单独启动 CircleActivity 为例:      来源: https://www.cnblogs.com/hyacinthLJP/p/12370558.html

Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误

六眼飞鱼酱① 提交于 2020-02-27 09:03:35
嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 getChildFragmentManager() 来获取FragmentManger. 虽然看起来和在activity中添加fragment差不多, 但因为fragment生命周期及管理恢复模式不同, 其中有一些需要特别注意的地方. 本文内容还包括了从Fragment迁移到v4.Fragment代码中需要改动的一些地方. 嵌套Fragments 嵌套Fragments Nested Fragments 是Android 4.2 API 17 引入的. 目的: 进一步增强动态复用. 如果要在Android 4.2之前使用, 可以用support library v4的版本, 后面会有详细的迁移过程介绍. 嵌套Fragment的动态添加 在宿主fragment里调用 getChildFragmentManager() 即可用它来向这个fragment内部添加fragments. Fragment videoFragment = new VideoPlayerFragment(); FragmentTransaction transaction =

WF4.0 学习系列

坚强是说给别人听的谎言 提交于 2020-02-26 22:37:49
WF4.0 基础篇 (一)开始使用WF WF4.0 基础篇 (二) Activity介绍及WriteLine Activity的使用 WF4.0 基础篇 (三) 流程实例WorkflowApplication与设计WF程序的基本原则 WF4.0 基础篇 (四) 顺序容器Sequence 与CodeActivity WF4.0 基础篇 (五) 数据的传递 Variable变量 WF4.0 基础篇 (六) 数据的传递 Arguments 参数 WF4.0 基础篇 (七) 数据的传递 变量与参数的使用 WF4.0 基础篇 (八) 控制流Activity WF4.0 基础篇 (九) 控制流Activity WF4.0 基础篇 (十) Collection 集合操作 WF4.0 基础篇 (十一) Excetpion 异常 与 TerminateWorkflow 结束流程 WF4.0 基础篇 (十二) CancellationScope 取消容器 WF4.0 基础篇 (十三) InvokeMethod 调用方法 WF4.0 基础篇 (十四) Delay 与WF4中的线程 WF4.0 基础篇 (十五) TransactionScope 事物容器 WF4.0 基础篇 (十六) CompensableActivity 补偿 WF4.0 基础篇 (十七) Bookmark WF4.0 基础篇 (十八)

2.1.3.Architecture components_LiveData

帅比萌擦擦* 提交于 2020-02-26 18:51:14
参考 https://developer.android.com/topic/libraries/architecture/livedata https://www.jianshu.com/p/55f94c1c5e0e LiveData LiveData是可观察的数据持有者类。 与常规的可观察对象不同,LiveData具有生命周期感知功能,这意味着它尊重其他应用程序组件(例如Activity,fragment或service)的生命周期。 这种意识确保LiveData仅更新处于活动生命周期状态的应用程序组件观察者。 如果LiveData的生命周期处于STARTED或RESUMED状态,则它认为由Observer类表示的观察者处于活动状态。 LiveData仅将有关更新的信息通知活动的观察者。 注册为观看LiveData对象的非活动观察者不会收到有关更改的通知。 您可以注册一个与实现LifecycleOwner接口的对象配对的observer ,也就是传递一个LifecycleOwner,一个Observer。 此关系允许 当对应的Lifecycle对象的状态更改为DESTROYED时,移除观察者。 这对于Activity和Fragment特别有用,因为它们可以安全地观察LiveData对象,而不必担心泄漏-Activity和Fragment的生命周期DESTROYED后