Android
文章平均质量分 66
hiperion
Everything will be ok.
Coding everything.
展开
-
flutter build apk 打包报错
实际问题所在是我们使用了Icon和IconData,但必须是const进行修饰,否则就会报这个错误。没错,在我们要执行的打包命令之后加上 --no-tree-shake-icons 参数就会忽略这个错误,可以顺利打包成功,但从AS的菜单中就无法进行打包操作了,因为无法自动添加这个参数。之前打包都是正常的,最近一直在开发新版,有段时间没打包了。上周五想打个测试包,发现报错了,各种clean找问题。根据这些信息似乎完全无法找到问题所在,我们可以在命令上加-v参数,这样就可以活动更详细的信息了。原创 2022-09-27 11:06:47 · 2845 阅读 · 0 评论 -
AndroidAnnotation无法生成下划线类问题记录
开始改的还顺利,根据接口文档一个个的改,调试。就想着改了再提一版,没想到噩梦就此开始。网上还有说是jdk的问题,环境变量也配置了。git切换回原来的分支,测试,可以正常编译。于是复制出一份改为的代码,然后从旧分支创建了一个新分支。把改完出错的代码,一个一个的复制过来,看到底是哪里出了错误。就在这时,切换到另一个model的时候,偶然间发现,这个新建的类,没有添加serialVersionUID,哈哈。开始以为是这个注解的问题SerializedName,于是把变量都改为public,经过测试依然没有作用。.原创 2022-07-21 15:14:00 · 705 阅读 · 0 评论 -
Timed out waiting for process (xxx) to appear on错误
似乎根本就没有执行安装apk到手机,再查看build目录,发现apk也没有生成。尝试直接执行gradle命令,installRelease,installDebug等命令均可正常执行,app也安装到手机上。开始在网上搜索关于“Timed out waiting for process (xxx) to appear on”,大概有如下方法:1.把调试配置中的启动选项从Nothing设置为Default Activity即可2.File > Invalidate Caches / Restart… > J原创 2022-07-04 10:43:29 · 5288 阅读 · 1 评论 -
使用百度地图Android SDK造成的ANR问题
有个产品集成了百度地图,之前用的好好的,最近发现在某些手机上发生了黑屏现象,通过查看log发现是发生了ANR,而且trace信息里只能找到baidu相关的so信息。这是咋回事呢。但是logcat打印信息可以发现问题所在的activity。/ActivityManager: ANR in com.test.test(com.test.test/com.test.android.activities.MainTabActivity_) PID: 7835 Reason: Input dispa原创 2021-11-11 15:06:10 · 2771 阅读 · 0 评论 -
关于AndroidStudio的代理(Proxy)设置无效问题
AndroidStudio中的代理设置我们一般可以找到菜单Apperarance & Behavior->System Settings->HTTP Proxy配置界面大概如下直接配置HTTP代理即可。但是有时https的某些url不知为何无法使用代理。那么socks是否可行呢。似乎也不行。连使用界面上的Check connection都测试失败。那么我们应该如何设置呢?可以在工程的gradle.properties中进行配置。配置方法如下:socks方式org.grad原创 2021-10-20 13:52:12 · 8150 阅读 · 0 评论 -
Android10调用系统剪裁时的一个小问题
直接上代码:剪裁方法public static Intent crop(Activity activity, Uri uri, int w, int h, int aspectX, int aspectY) { Intent intent = new Intent("com.android.camera.action.CROP"); intent.setDataAndType(uri, "image/*"); intent.putExtra("crop",原创 2021-09-01 13:36:17 · 550 阅读 · 0 评论 -
Flutter 沉浸式状态栏实现及Splash屏幕
Android原生中实现沉浸式状态栏很普遍。那在Flutter中如何实现呢。下面就大概总结一下。开发环境如下:[✓] Flutter (Channel stable, 1.22.6, on Mac OS X 10.14.5 18F132 darwin-x64, locale zh-Hans-CN)[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)[✓] Xcode - develo原创 2021-03-11 17:45:41 · 3054 阅读 · 0 评论 -
org.gradle.api.resources.ResourceException: Could not get resource ‘https://xxx.xxx/xxx.pom
由于合作开发,合作方提供的库放在了自建的maven仓库中,为了安全需要通过专有网络进行连接。但在进行库更新过程中总是提示如下类似错误:Caused by: org.gradle.api.resources.ResourceException: Could not get resource 'https://xx.xx.com/com/android/tools/xxx-1.1.0.pom'.既然下载找不到,那是不是专有网络连接有问题。于是直接在浏览器中访问上面的pom文件地址,发现是可以访问的。那么原创 2020-10-30 16:29:46 · 4399 阅读 · 1 评论 -
限制EditText为单行
有时我们使用EditText时只想让它保持单行状态。可能你会说直接设置如下即可:android:maxLines="1"这样确实是显示的时候保持了一行,当我们再按"Enter"键后发现上面的字没了,但实际它还在EditText里,使用getText()获取内容时是带换行的内容。类似这样:第一行输入的内容第二行输入的内容但在EditText中可能只会看到第二行的内容。那么如何让它真正的只有一行呢。按如下设置即可:android:maxLines="1"android:inputType="原创 2020-09-17 12:14:52 · 2105 阅读 · 0 评论 -
Android本地Maven库创建及使用
在某些情况下,公司的多个项目都会有一些共通的核心库。一旦修改起来,多个项目来回修改很麻烦,也很容易乱。所以可以将相关的核心库提取出来做成一个library,创建一个本地maven库。多个项目引用起来就方便多了。维护起来也简单。创建一个核心库的工程创建一个新的Android工程,直接选择任意模板,或者Empty都可以点击File -> New -> Moudule ->Android Library, 点击Next,然后需要配置包名等信息,点击Finish完成即可然后就原创 2020-08-19 10:28:22 · 3148 阅读 · 1 评论 -
crashlyticsUploadDeobsRelease导致打包卡住
crashlyticsUploadDeobsRelease导致打包卡住问题在使用Fabric 进行crash的统计功能时,在打包过程中需要向fabric上传Mapping文件,由于某些网络问题,可能会导致打包失败。如下,可针对特定渠道屏蔽这个task即可。gradle.taskGraph.whenReady { tasks.each { task -> if (task.name.contains("crashlyticsUploadDeobsRelease")) {原创 2020-08-17 16:26:40 · 862 阅读 · 0 评论 -
工程提示Unfortunately you can‘t have non-Gradle Java modules and > Android-Gradle modules in one project
打开工程时提示Unfortunately you can't have non-Gradle Java modules and > Android-Gradle modules in one project可通过以下步骤解决1- 关闭对应的project2- 彻底关闭Android Studio3- 删除 .idea 目录4- 删除 .iml 文件5- 重新打开Android Studio,并点击对应工程直接打开此时会自动生成.idea目录但此方法有缺点,就是某些工程的配置可能会丢失原创 2020-08-17 16:22:25 · 1636 阅读 · 0 评论 -
java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation问题解决
在 android Oreo (API 26) 如果在style中使用了以下属性,则将无法改变屏幕方向,否则会崩溃 <item name="android:windowIsTranslucent">true</item>or <item name="android:windowIsFloating">true</item>可以有以下几种解决方式可以把配置改为false,或者直接移除配置 <item name="android:wind原创 2020-07-24 15:23:20 · 626 阅读 · 0 评论 -
gradle connect timed out
有个项目几个月没有维护了。最近有新的需求要修改,打开项目后gradle同步总是失败,而且console中只有如下的输出gradle connect timed out根据以上信息可能无从下手,此时查看了Sync窗口的同步过程,显示如下Downloading gradle 1.25.4.pom一直显示这个信息,然后就失败了。咋一看好像是gradle下载失败了,但看这个版本号似乎有点太旧了。然后查看了project的build.gradle文件。根据这个版本号,发现应该是这个下载失败了'io原创 2020-07-15 11:29:49 · 2293 阅读 · 0 评论 -
Android开发中Activity切换导致的onCreate重复执行的问题
在我们用Android开发过程中,会碰到Activity在切换到后台或布局从横屏LANDSCAPE切换到PORTRAIT,会重新切换Activity会触发一次onCreate方法。在Android开发中这种情况视可以避免的,我们可以在androidmanifest.xml中的activit元素加入这个属性android:configChanges="orientation|keyboardHidden" 就能有效避免oncreat方法的重复加载, 同时在Activity的Java文件中重载onConfi原创 2010-10-31 15:12:00 · 11395 阅读 · 1 评论 -
android真机调试方法
<br />1. 设置android手机为USB调试模式。步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择【USB调试】 <br />2. 用USB连接手机和电脑,并确保成功。步骤: 在windows下执行c:/adb devices, 查看手机是否已经连接成功。<br /> 3. 设置应用程序为调试模式。操作: 编辑AndroidManifest.xml 增加调试参数android:debuggable="true", 如下:<br /><application android原创 2010-12-17 14:31:00 · 2026 阅读 · 0 评论 -
如何在android模拟器中安装并运行已经开发好的或者别人写好的apk文件
在网上,想必有很多开发好的android程序,如果你想运行别人的程序,或者说你下载了一些别人的apk文件,该如何运行呢,我觉得应该从以下几方面入手: 1.你得先下载并解压android SDK(类似与java的JDK,你可以理解为一个开发包),你可以解压到你想解压的任何地方。我以我的做法为例,我是把他压缩到我的F盘下; 2.增加系统变量SDK_ROOT,让她指向sdk之下 /tools文件夹(通俗点说,就是配置系统变量,学过java的人,对于环境变量的配置应该都不陌生),因为我是把SDK文件解压到我的F转载 2010-11-03 14:28:00 · 3871 阅读 · 0 评论 -
android开发时 使用android layout editor 打开xml时eclipse自动关闭
以下为出现这个错误后eclipse 错误log 的摘要## An unexpected error has been detected by HotSpot Virtual Machine:## EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d2617ae, pid=5136, tid=3824## Java VM: Java HotSpot(TM) Client VM (1.5.0-b64 mixed mode)# Problematic frame:原创 2010-12-28 10:29:00 · 5442 阅读 · 0 评论 -
Android开发之:如何使用样式和主题
Android开发之:如何使用样式和主题 样式是用于描述一个View或是一个窗口的显示属性的集合,样式可以指定如高度,填充,字体颜色,字体大小,背景颜色等属性。样式是从布局文件中分离出来的一个XML资源文件。Android中的样式就像Web开发中的css样式表,它使用我们的样式独立于内容进行设计开发。 例如,通过使用一个样式可以让如下的布局文件 <TextView androi原创 2011-06-22 12:51:00 · 1432 阅读 · 0 评论 -
13 个你需要知道的关于 Android 4.0 的事项
代号为 Ice Cream Sandwich (冰淇淋三明治) 的 Android 4.0 即将在今年的第四季度发布,在此之前我们先来了解一些 Android 4.0 的相关事项。1. 一个系统Android 4.0 将只提供一个版本,同时支持智能手机、平板电脑、电视等设转载 2011-09-01 09:18:44 · 581 阅读 · 0 评论 -
Service初步
Service初步1 Service是什么后台运行 处理耗时较长的工作Service是一个应用程序组件Service没有图形化界面Service通常用来处理一些耗时比较长的操作可以使用Service更新ContentProvider转载 2011-09-04 20:16:30 · 662 阅读 · 0 评论 -
关于android开发时,对src中包名的修改
在一次开发中遇到运行android程序提示,签名不一致,请先卸载之前的应用。原因找到了,与之前的一个应用的包同为com.ocean,于是想修改包名在包名上点右键-->refactor-->rename改名后本以为可以了但是运行还是说签名错误,原来rename的原创 2011-09-06 09:35:45 · 2936 阅读 · 1 评论 -
android开发googlemap时出现的问题
manifest文件中要加下面内容:...................... 布局文件中加入 android:id="@+id/map_view" android:la原创 2011-09-06 15:37:37 · 2131 阅读 · 0 评论 -
conversion to dalvik format failed with error 1的解决办法
android低版本工程(如1.5)放到高版本环境中(如2.2)可能会上述错误,解决方法如下: 1。 如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。 (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升转载 2011-09-06 10:09:31 · 714 阅读 · 0 评论 -
android开发中出现Only the original thread that created a view hierarchy can touch its views.错误的解决方法
出现 Only the original thread that created a view hierarchy can touch its views.这个错误是因为android中不允许子线程更新UI,可以通过handler 的handlerMessage进行处理子原创 2011-09-08 18:58:33 · 2138 阅读 · 1 评论 -
Android面试题
1. 请描述下Activity的生命周期。2. 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?3. 如何将一个Activity设置成窗口的样式。(Edited by Sodino)4. 如何退出Activi转载 2011-08-17 18:21:53 · 757 阅读 · 0 评论 -
android应用去掉title bar
一、所有Activty界面全去掉:修改AndroidManifest.xml在application 标签中添加android:theme="@android:style/Theme.NoTitleBar" 二、代码方式及对某个Activty有转载 2011-08-16 09:53:18 · 696 阅读 · 0 评论 -
更改 Android SDK 中 AVD 的位置
使用 Android 的 SDK 时,可能有很多人纳闷如何修改 AVD 的位置,那么经过摸索和 Google 之,也经过实验,终于知道如何更改 AVD 的位置了,那么请看。第一种方法,适合还没有建立 AVD 的情况即:在计算机右击的属性 选择环境变量,然后添加一个用户的环境变量,名字为 "ANDROID_SDK_HOME”,然后把变量值改为你想将".android”文件夹(AVD信息)所放原创 2011-11-01 21:28:37 · 4758 阅读 · 3 评论 -
android 通过资源名称去获得资源R id
Resources resources = context.getResources();int indentify = resources.getIdentifier(context.getPackageName()+":drawable/"+iconName, null, null);if(indentify>0){icon = resources.getDrawable(inde转载 2011-12-05 16:25:41 · 5376 阅读 · 0 评论 -
android与WEB服务器交互时的SESSION问题
当Android应用程序访问WEB服务器的时候,我们为了与服务器保持同一会话,也就是说当前登录用户与服务器的交互是在同一个SessionId下。当我们登录成功的时候,可以通过HTTP请求获取到Cookie信息,其中包括会话的SessionId,同时也可以自己将SessionId放入Json中返回。Session我们可以用一个静态变量来存放,每次向服务器发送请求的时候将SessionId带过去,转载 2011-12-06 14:20:35 · 2594 阅读 · 3 评论 -
listview中长按事件响应
在Android的菜单分两种:options menu 、context menu 。(也有分三种的:options menu 、context menu、sub menu)其中options menu是和Activity相关联的,context menu 是和View关联。我们需要点击控件出现的菜单属于context menu ;但是context menu 只能通过setOnCreateCon原创 2011-12-09 15:56:06 · 1542 阅读 · 0 评论 -
Android模拟器你不知道的秘密
今天调试程序的时候,想用键盘上的delete键删除文本框中的文字,按住delete发现模拟器左上角出现了个圆球模样的东西,移动鼠标那球还会转,发现页面上的焦点在不停的切换,原来按住delete,移动鼠标相当于轨迹球的功能。呵呵原创 2011-12-09 09:19:47 · 929 阅读 · 0 评论 -
不错的Android开发资料,收藏一下
不错的Android开发资料,收藏一下 http://www.apkbus.com/android-19658-1-1.html原创 2012-01-13 13:15:36 · 1069 阅读 · 0 评论 -
关于Android中的radioGroup选择
关于Android中的radioGroup选择xml定义如下:<RadioGroup android:id="@+id/sex" android:layout_width="wrap_content" android:layout_height="wrap_c原创 2011-12-29 11:22:54 · 9128 阅读 · 0 评论 -
android项目命名规范
一、Android编码规范1.java代码中不出现中文,最多注释中可以出现中文2.局部变量命名、静态成员变量命名只能包含字母,单词首字母出第一个外,都为大写,其他字母都为小写3.常量命名只能包含字母和_,字母全部大写,单词之间用_隔开4.layout中的id命名命名模式为:view缩写_模块名称_view的逻辑名称view的缩写详情如下LayoutView:lv转载 2012-02-07 14:53:56 · 3933 阅读 · 0 评论 -
Basic4android 1.8,用 Basic 编写 Android 应用
Basic4android 1.8,用 Basic 编写 Android 应用 Basic4android v1.8 发布,该版本包含众多新特性:代码编辑器- Automatic case correction of variables and subs (based on their declaration)- Highlighting of undeclared v转载 2012-02-08 17:22:42 · 1905 阅读 · 0 评论 -
Xamarin —— 使用 .NET 开发跨平台的手机应用
Xamarin —— 使用 .NET 开发跨平台的手机应用手机应用程序开发者最头痛的问题是确保他们的程序能够在最新版本的IOS,Android和Windows操作系统的手机上运行。Xamarin CEO Nat Friedman 希望通过提供给他们工具使其能在3大平台上分享代码以减轻上面所提到的令他们头痛的问题。Xamarin跨平台能力的关键就是使用了Mono,一种十年前用来运行Mic转载 2012-02-08 17:27:35 · 1181 阅读 · 0 评论 -
一个Android小框架
今天在找资料的时候发现了这个,想法很不错,做个标记吧。未使用框架时public class AndroidWay extends Activity { private Button btn1; private Button btn2; @Override public void onCreate(Bu原创 2012-02-09 13:54:43 · 744 阅读 · 0 评论 -
android代码设置全屏显示
//设置全屏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);原创 2012-01-06 09:47:38 · 1674 阅读 · 0 评论 -
Google 发布 Android Design 网站
Google 发布 Android Design 网站代号为冰淇淋三明治的 Android 4.0 是 Android 进行最大限度重新设计的成果,该版本加强了新的互动和风格的UI框架,可以让您创建 Android 应用程序比以往任何时候都更简单、更美丽。为了帮助开发者和设计人员更好的开发 Android 应用,Google 日前推出了 Android Design 网站,无论你是专业的 UI转载 2012-02-08 17:28:36 · 651 阅读 · 0 评论