- 博客(66)
- 资源 (13)
- 收藏
- 关注
原创 Jetpack Compose入门
Compose简介Compose 是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,帮助您使用更少的代码、强大的工具和直观的 Kotlin API,快速打造生动而精彩的应用Compose 编程思想声明性编程范式:声明性的函数构建一个简单的界面组件,无需修改任何 XML 布局,也不需要使用布局编辑器,只需要调用 Jetpack Compose 函数来声明想要的元素,Compose 编译器即会完成后面的所有工作举例:显示一行文字class MainActiv
2022-04-16 11:02:49
480
1
原创 Android split分包和ndk abiFilters
splits{ // Configures multiple APKs based on ABI. abi{ // Enables building multiple APKs per ABI. enable true // By default all ABIs are included, so use reset() and include to specify that we only
2021-11-03 09:59:30
2767
1
原创 编译报错Runtime JAR files in the classpath should have the same version
这个是JDk 版本问题 可以使用jdk 1.8.0_131
2021-09-16 16:51:47
4955
原创 Android组件化
组件化创建一个app 作位壳工程。一个common library来写基础组件库,提供给module。创建module 模块。1.版本管理在根目录创建app_config.gradleext{//是否发布isRease=trueapp_android=[ compileSdkVersion:30, buildToolsVersion :"30.0.2", minSdkVersion :26, targetSdkVersion
2021-07-13 11:18:27
418
原创 Retrofit 在拦截器中加密url 并修改body 参数key-value
Retrofit 在拦截器中加密url 并修改body 参数key-value从一个蛋疼的需求说起:URI加密:jjj/ 后面的URI采用AES-CBC-pkcs5padding加密后再base64编码,然后jjj/ 换成xxxx/v2/,例: 原始URI:jjj/sms/login, 加密内容为sms/login,加密后的URI为xxx/v2/89HlYe0vil/lOl0hgFiK0Q==参数混淆: 在原来参数前面加上随机字符串,用3个下划线___连接。例:原始参数{"mobile":"12
2021-06-08 16:31:55
1519
原创 react-native AndroidRuntime: FATAL EXCEPTION: create_react_context
React-native Android 端报错新版本文件名已经从index.android.js变为了index.js;在项目根目录执行:根目录cmd运行命令:react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/ma
2021-05-18 14:35:09
933
原创 Android保存Bitmap到相册
fun saveMediaToStorage(context: Context,bitmap: Bitmap) { //Generating a file name val filename = "${System.currentTimeMillis()}.jpg" //Output stream var fos: OutputStream? = null //For devices running android >
2021-05-14 13:11:40
888
原创 Dialog封装使用
使用:BoxDialog boxDialog = new BoxDialog(this, view, BoxDialog.LocationView.CENTER, true);boxDialog.show()参数一:上下文对象参数二:view 布局参数三:dialog 要显示的位置参数四:是否全屏显示下载地址:
2021-05-06 11:41:43
135
原创 GitKarken下载安装
我们只需要找到安装目录删除update.exe 即可!如果快捷方式是update.exe 可以去app-6.5.1 中找到应用程序,生成快捷即可免费使用!下载地址:GitKarken 下载
2021-05-06 10:11:16
499
原创 Android 获取位置经纬度并转为地址信息
public class MLocationManager { @SuppressLint("MissingPermission") public static Location getLocation() { LocationManager locationManager = (LocationManager) MApplication.getInstance().getSystemService(Context.LOCATION_SERVICE); Str
2021-03-19 11:34:08
742
原创 Android图片压缩,压缩到几兆之内
实现突破压缩到1.5M 之内并上传:发现问题:压缩之后反正都是正常的,但是当调用BitmapFactory.decodeStream 转我bitmap时图片质量会变大!所以我就直接使用流转base64来上传避免转换导致图片变大:具体原因百度有! public static String compressImageBit(String url) { if (TextUtils.isEmpty(url)) { return null; }
2021-03-08 14:24:39
612
原创 Retrofit 上传文件
文件流的形式: @Multipart @POST("/upload") LiveData<ApiResponse<String>> voucherUpload(@Part MultipartBody.Part part);public LiveData<ApiResponse<String>> getVoucherUpload(LiveData path) { LiveData voucherData = Trans
2021-03-05 10:18:56
2319
2
原创 H5 内部唤起android App
场景:当我们使用H5推广的时候会存在一键打开App的功能!1.android原生端配置在清单文件入口的Activity 配置如下!<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/>
2021-02-24 15:40:11
983
原创 Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: The currently
模拟器运行安装报错:Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: The currently selected variant "dangbei-debug" uses split APKs, but none of the 1 split apks are compatible with the current device with ABIs "x86".解决办法:在ap
2021-02-22 11:30:29
1211
原创 Duplicate class kotlinx.coroutines.AbstractCoroutine found in modules DataStore冲突解决
错误内容:Duplicate class kotlinx.coroutines.AbstractCoroutine found in modules kotlinx-coroutines-core-1.3.9.jar (org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9) and kotlinx-coroutines-core-jvm-1.3.9.jar (org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm
2021-01-22 18:56:15
1576
原创 FackBook Sdk 接入 获取keyhash 秘钥散列
1.首先下载下载OpenSSl下载 OpenSSL for Windows的Binaries版本, 如果下载不下,可下载现成的2.下载完解压到随便一个文件夹。找到bin目录下的openssl.exe的路径例如:D:\openssl-0.9.8k_X64\bin\openssl3.打开CMD后台 输入keytool -exportcert -alias 此处为你的签名文件的别名 -keystore D:\app\keyfile.jks(此处为签名文件) | D:\openssl-0.9.8k_X64\
2021-01-05 15:35:26
207
原创 WebView与Android方法互相调用
Android调用js首先设置webview支持JavaScrip WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true);2.使用loadurl 调用js方法webView.loadUrl("javascript:mMethord()");也可以使用evaluateJavascriptif (version >= Build.VERSION_CODES.KIT
2020-10-09 14:30:24
991
原创 Android小技巧(全局Dialog,adb install)
Android1.android不依赖具体activity弹出Dialog对话框,即全局性对话框.在创建Dialog时添加:dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);并在AndroidManifest.xml中添加:<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />附加:1.SDK环
2020-10-09 10:24:09
502
原创 Android 获取文件真实路径
public class GetRealPath { public static String getFPUriToPath(Context context, Uri uri) { try { List<PackageInfo> packs = context.getPackageManager().getInstalledPackages(PackageManager.GET_PROVIDERS); if (packs !
2020-09-14 14:35:55
2108
6
原创 Android面试整理资料(持续更新...)
Android面试整理Activity中的四种启动模式介绍前须知:任务栈用来存放用户开启的Activity。在应用程序创建之初,系统会默认分配给其一个任务栈(默认一个),并存储根Activity。同一个Task Stack,只要不在栈顶,就是onStop状态。 任务栈的id自增长型,是Integer类型。新创建Activity会被压入栈顶。点击back会将栈顶Activity弹出,并产生新的栈顶元素作为显示界面(onResume状态)。5.当Task最后一个Activity被销毁时,对应的应
2020-08-01 11:02:58
385
原创 Android实现MVVM+LiveData+ViewModel+Retrofit
Android实现MVVMMVVM简介:MVVM(Model-View-ViewModel) 是由Mvp演变而来。View包含Ui布局,以及布局生命周期控制器(Activity,Fragment)DataBinding实现view层与viewModel数据的双向绑定(但实际上在Android Jetpack中DataBinding只存在于布局和布局生命周期控制器之间,当数据变化绑定到布局生命周期控制器时再转发给ViewModel,布局控制器可以持有DataBinding但ViewModel不
2020-07-28 16:11:11
5091
1
原创 Vue-cli Mobile学习
Vue-cli Mobile学习注:使用工具Vscode什么是Vue-clivue-cli是有Vue提供的一个官方cli,专门为单页面应用快速搭建繁杂的脚手架。它是用于自动生成vue.js+webpack的项目模板,是为现代前端工作流提供了 batteries-included 的构建设置。只需要几分钟的时间就可以运行起来并带有热重载,保存时 lint 校验,以及生产环境可用的构建版本。Vue-cli的使用1.安装vue-cli打开终端窗口即打开cmd,使用命令安装npm install -g
2020-07-23 11:44:30
368
原创 迁移Androidx app.FragmentManager.isDestroyed() on a null object
迁移AndroidX fragment报错:解决方法:project.configurations.all { //resolutionStrategy.cacheDynamicVersionsFor 0, 'seconds' resolutionStrategy.eachDependency { details -> def requested = details.requested if (requested.g
2020-06-19 17:31:38
1111
1
原创 Android9.0 http网络请求适配方案
背景: 由于 Android P 限制了明文流量的网络请求,非加密的流量请求都会被系统禁止掉。场景: 如果当前应用的请求是 htttp 请求,而非 https ,这样就会导系统禁止当前应用进行该请求,如果 WebView 的 url 用 http 协议,同样会出现加载失败,https 不受影响。解决方案1:1:在 res 下新建一个 xml 目录,然后创建一个名为:network_secur...
2020-05-07 14:20:41
987
原创 Android 实现微信,QQ文件在其他应用打开并获取到路径
例如:1.想实现其他应用打开出现自己的应用,需要在清单文件中增加配置 <!--docx--><intent-filter tools:ignore="AppLinkUrlError"> <action android:name="android.intent.action.VIEW" /> <category android:name="a...
2020-05-07 11:53:33
3978
18
原创 Android打包apkSTRING at line 1 column 99 path $[0].apkInfo.versionName
Android打包apkSTRING at line 1 column 99 path $[0].apkInfo.versionNameandroid打包apk报错:如果报:Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected a name but was STRIN...
2018-12-20 17:47:51
744
原创 Android 插件化,qihoo360插件方案。集成简单实用方便,兼容性高
Android 插件化,qihoo360插件方案 目录Android 插件化,qihoo360插件方案 宿主App插件化: 插件App插件配置: 宿主调用插件App: 新建一个项目,开始配置 宿主插件化配置: 在项目的根目录build.gradle中配置 classpath 'com.qihoo360.replugin:replugin-host-g...
2018-07-26 13:53:17
1722
原创 Android 跳转到应用设置详情界面
跳转到应用设置界面public static void toSelfSetting(Context context) { Intent mIntent = new Intent(); mIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); if (Build.VERSION.SDK_INT >= 9) { ...
2018-06-13 11:34:17
11010
1
原创 Andoid实现顶部导航栏和底部导航滑动隐藏(BottomNavigationView,CoordinatorLayout)
首先这个效果需要引入design:compile 'com.android.support:design:26.+'在布局文件中:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app=...
2018-04-27 09:44:52
6459
1
原创 自定义带返回按钮的标题
1,项目中基本每个页面都要用到返回按钮以及标题,每次使用每次写就变的很麻烦,也没有必要,所以今天要自定义一个TitleView方便使用。首先,要写个布局文件:里面放一个返回按钮以及一个标题<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/ap...
2018-04-25 14:41:12
670
原创 Android webview 播放视频无法播放以及可以播放预览图为加载不出来
Android webview 播放视频无法播放以及可以播放预览图为加载不出来的解决方案1,webView的配置工作:WebSettings webSettings = shopWebView.getSettings();webSettings.setBlockNetworkImage(false);webSettings.setLoadWithOverviewMode(true);...
2018-03-16 10:57:15
3776
原创 Android view 转化为Bitmap并保存在本地
private void initView() { // 获取图片某布局 final View view = findViewById(R.id.layout); view.setDrawingCacheEnabled(true); view.buildDrawingCache(); new Handler().postDelayed(new Runnabl
2018-02-02 15:26:28
1995
原创 Android V7包下的CardView
cardview是v7包下出的阴影控件;使用方法:把你想要设置阴影的布局使用cardview作为根布局进行包裹起来。app:cardBackgroundColor :阴影的颜色app:cardCornerRadius=:圆角的度数app:cardElevation="10dp":这个是表示z轴的高度,增加立体感app:contentPaddingBottom="5dp" 设
2018-01-22 15:32:04
992
原创 FlowLayout 打造流式布局,实现热门推荐
** * 打造实现流式标签 */public class FlowLayout extends ViewGroup { private static String TAG = "FlowLayout"; private setItemClick setItemClick; //自定义属性 private int LINE_SPACE; private
2017-12-27 11:05:43
388
原创 Gson解析工具类,解析纯数组
package com.tempetek.dicooker.help;import com.google.gson.Gson;import com.google.gson.JsonObject;import com.google.gson.reflect.TypeToken;import java.lang.reflect.Type;import java.util.ArrayLis
2017-12-26 18:29:05
888
原创 本地保存集合数据
publicclassListDataSave{privateSharedPreferencespreferences;privateSharedPreferences.Editoreditor;publicListDataSave(ContextmContext,StringpreferenceName){
2017-12-26 16:26:58
627
原创 底部弹出的Popuwindow 用于更换头像
/**** * 头像提示框 */public void showPopupWindow() { pop = new PopupWindow(getContext()); View view = LayoutInflater.from(getContext()).inflate(R.layout.item_popupwindows, null);
2017-12-19 16:46:38
361
原创 简单实现Dialog样式的Activity
只需要两部就可以实现Dialog样式的Activity1,设置Stylestyle name="Theme.ActivityDialogStyle" parent="Theme.AppCompat.Light.NoActionBar"> item name="android:windowIsTranslucent">trueitem> item name="androi
2017-11-24 10:29:46
1314
GetRealPath.java
2020-09-14
gitkarken.zip
2020-05-12
RefreshLoadListComponent.js
2020-05-08
GetRealPath.java
2020-05-07
Andoid实现顶部导航栏和底部导航滑动隐藏(BottomNavigationView,CoordinatorLayout)
2018-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人