andrioid
凉城424
这个作者很懒,什么都没留下…
展开
-
The application could not be installed: INSTALL_FAILED_TEST_ONLY
在oppo手机运行项目时,安装不上原创 2023-01-10 16:31:48 · 245 阅读 · 0 评论 -
Android中右边gradle获取签名没有singingReport
Android中右边gradle获取签名没有singingReport问题原创 2022-07-08 15:45:38 · 1585 阅读 · 0 评论 -
Duplicate class android.support.v4.app.INotificationSideChannel found in modules core-1.5.0-run
到别的项目里面的库的时候运行报这个错,网上搜了一下解决方法原创 2022-06-24 14:12:48 · 1578 阅读 · 0 评论 -
android中清单文件加provider不能运行问题
一次,项目修改了compileSdkVersion之后,拍照就报错了,之后清单文件添加provider就不能运行了,app那里画❌解决办法:定义MineFileProvider继承 FileProvider 然后把上面androidx.core.content.FileProvider 修改为自定义得MineFileProvider再运行就可以编译通过了。...原创 2021-11-05 15:02:58 · 2112 阅读 · 0 评论 -
switchbutton
//导依赖//开关按钮implementation 'com.github.zcweng:switch-button:0.0.3@aar'//布局 <com.suke.widget.SwitchButton android:id="@+id/switchButton" android:layout_width="42dp" android:layout_height="24dp" android:layout_alignPare原创 2021-10-18 10:59:54 · 732 阅读 · 0 评论 -
相机、相册、剪裁
PhotoCameraDialog dialog = new PhotoCameraDialog(this); dialog.setClick(new PhotoCameraDialog.CameraOrPhoto() { @Override public void clickCamera() { Intent intent = new Intent原创 2021-10-09 15:21:01 · 77 阅读 · 0 评论 -
远程升级(静默升级)
需求:公司有个广告投放的屏幕,需要在屏幕上进行广告播放,当app升级新东西的时候,对广告屏幕进行远程升级,这个是有root权限的,当时网上找了好多资料,然后结合自己整出来的这个,前面是工具类,最后面有使用方法和清单文件配置public class AutoInstaller extends Handler { private static final String TAG = AutoInstaller.class.getSimpleName(); private static final原创 2021-09-13 14:23:43 · 692 阅读 · 0 评论 -
android中开机启动app
//广播public class BootBroadcastReceiver extends BroadcastReceiver { static final String ACTION = "android.intent.action.BOOT_COMPLETED"; @Override public void onReceive(final Context pContext, Intent pIntent) { if (pIntent.getAction()原创 2021-09-13 14:02:19 · 211 阅读 · 0 评论 -
获取app版本号、apk版本号
public class AppVersionUtil { public static String getAppVersionName(Context context) { String versionName = ""; try { PackageManager pm = context.getPackageManager(); PackageInfo p1 = pm.getPackageInfo(context.原创 2021-09-13 13:53:46 · 720 阅读 · 0 评论 -
背景或线渐变
//从左到右渐变<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#58beff" android:endColor="#4463ff" android:angle="0"/></shape>原创 2021-08-18 13:38:33 · 67 阅读 · 0 评论 -
文字两种颜色渐变
//自定义 布局中引用即可public class TwoTextView extends TextView { private LinearGradient mLinearGradient; private Paint mPaint; private int mViewWidth = 0; private Rect mTextBound = new Rect(); public TwoTextView(Context context, AttributeSet原创 2021-08-18 09:59:48 · 96 阅读 · 0 评论 -
仿支付宝、美团弹窗支付
//布局<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" android:backg.原创 2021-07-19 16:04:54 · 246 阅读 · 1 评论 -
问卷调查之查看作答详情
//单选if (theAnswer.equals("A")) { singleViewHolder.rb_one.setChecked(true); } else if (theAnswer.equals("B")) { singleViewHolder.rb_two.setChecked(true); } else if (theAnswer.equals("C")) {原创 2021-07-19 16:01:41 · 185 阅读 · 1 评论 -
问卷调查答题
private List<String> mStrings = new ArrayList<>(50);public void selectAnswer(int position, String dto) { mStrings.set(position, dto); }@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedI原创 2021-07-19 15:55:04 · 77 阅读 · 0 评论 -
Activity生命周期onStop,onDestroy
最近有个问卷调查的需求,需要自己出题传给后台,为了保存自己编辑的题目,我使用了sqlite,但是杀死进程或者退出页面时需要把数据删除,原先以为杀死进程调用onDestroy方法就行,但后来发现杀死进程时onDestroy方法根本不执行,后来打印生命周期发现1.杀死进程,onStop执行2.按返回键,onStop、onDestroy都会执行看来以后用生命周期的时候得时常打印一下...原创 2021-07-02 13:52:21 · 418 阅读 · 0 评论 -
RadioButton改变圆圈颜色、CheckBox改变框的颜色
RadioButton:第一种:在style文件里面:<style name="MyRadioButton" parent="Theme.AppCompat.Light"> <item name="colorControlNormal">@color/colorPrimary</item> <item name="colorControlActivated">@color/colorAccent</item>原创 2021-06-23 15:19:54 · 1554 阅读 · 4 评论 -
问卷调查案例(手动添加数据并转成json)
public class InfoActivity extends AppCompatActivity { private EditText topic; private Spinner question_type; private EditText describe; private EditText question; private EditText one; private EditText two; private EditText thr原创 2021-05-25 14:49:55 · 286 阅读 · 1 评论 -
购物车加减
public class ShopCar extends LinearLayout{ private OnShopCarClickListener listener; private EditText ed_number; private String numberStr; public void OnShopCarClickListener(OnShopCarClickListener listener) { if(listener!=null){原创 2021-05-13 14:12:01 · 88 阅读 · 0 评论 -
计时器、日期格式化
Chronometer计时器:布局引用这个控件即可 ch.setBase(SystemClock.elapsedRealtime()); ch.setFormat("%S"); ch.start(); ch.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() { @Override public void onChr原创 2021-05-12 14:52:33 · 190 阅读 · 0 评论 -
图片圆角,圆形
自定义图片圆角:public class RoundImageView extends AppCompatImageView { //圆角大小,默认为10 根据实际情况自己设置图片圆角大小 private int mBorderRadius = 10; private Paint mPaint; // 3x3 矩阵,主要用于缩小放大 private Matrix mMatrix; //渲染图像,使用图像为绘制图形着色 private B原创 2021-05-12 10:11:25 · 86 阅读 · 0 评论 -
音乐播放器获取音乐列表
清单文件添加权限:<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>public class MusicUtil { public static List<MusicBean> getMusics(Context context) { List<MusicBean> beans = new ArrayList<>(); C原创 2021-04-29 13:52:45 · 441 阅读 · 0 评论 -
sqlite数据库
public class StudentDatabase extends SQLiteOpenHelper { public StudentDatabase(@Nullable Context context) { super(context, "student.db", null, 1); } @Override public void onCreate(SQLiteDatabase pSQLiteDatabase) { pSQLiteD原创 2021-04-29 11:58:25 · 135 阅读 · 2 评论 -
viewmodel
依赖:implementation "android.arch.lifecycle:extensions:1.1.1"public class FruitViewModel extends ViewModel { private MutableLiveData<Fruit> mApple; public LiveData<Fruit> getApple(){ if(mApple==null){ mApple = ne原创 2021-04-29 11:47:51 · 52 阅读 · 0 评论 -
各种网络请求
1.volley依赖:implementation 'com.android.volley:volley:1.1.1'网络权限:<uses-permission android:name="android.permission.INTERNET"/>get请求:RequestQueue queue = Volley.newRequestQueue(this);// Request a string response from the provided URL.StringReques原创 2021-04-29 11:45:52 · 121 阅读 · 0 评论 -
Android中各种dialog
第一种:普通dialogAlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setIcon(R.drawable.follow); builder.setTitle("普通对话框:提示"); builder.setMessage("是否要删除?"); builder.setPositiv...原创 2021-04-29 11:30:30 · 920 阅读 · 0 评论 -
Android中实现画板效果
画板效果包括:画笔的颜色变化,橡皮擦,清除public class ScreenView extends View { private Paint mPaint; private Path mPath; private float mLastX; private float mLastY; private Bitmap mBufferBitmap; private Canvas mBufferCanvas; private static fina原创 2021-04-29 11:21:25 · 155 阅读 · 0 评论 -
java.net.UnknownServiceException: CLEARTEXT communication to leshibaojishi.qiweibang.com not permitt
java.net.UnknownServiceException: CLEARTEXT communication to leshibaojishi.qiweibang.com not permitted by network security policy原创 2021-04-14 14:43:27 · 148 阅读 · 0 评论 -
导项目遇到的问题总结
1.问题:Your project path contains non-ASCII characters.解决办法:在gradle.properties添加android.overridePathCheck=true2.把gradle-wrapper.properties中distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip修改成这个项目的gradle中:classpath ‘com.androi原创 2021-03-31 14:51:33 · 111 阅读 · 0 评论 -
svn提交更新按钮
VCS—>Enabled Version Control Integration,之后有三个选项svn,git,还有一个不记得了原创 2021-01-25 15:29:26 · 176 阅读 · 0 评论 -
Android之号码隐藏
//号码隐藏public class DigitUtil { /** * 手机号中间四位隐藏 * @param phone 手机号 */ public static String phoneHide(String phone) { String phoneHide = phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2"); return phoneHide; }原创 2021-01-21 13:40:01 · 722 阅读 · 0 评论 -
Android中防止用户多次点击
//防止用户多次点击public class Check { // 两次点击按钮之间的点击间隔不能少于1000毫秒 private static final int MIN_CLICK_DELAY_TIME = 1000; private static long lastClickTime; public static boolean isFastClick() { boolean flag = false; long curClickTim原创 2021-01-21 13:30:07 · 156 阅读 · 0 评论 -
Android中输入框输入的数字大于2时只能显示2
第一种:count.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence pCharSequence, int pI, int pI1, int pI2) { } @Override public void onTextChanged(CharSe原创 2021-01-20 16:53:28 · 138 阅读 · 0 评论 -
图片压缩
private Bitmap ImageSizeCompress(Uri uri){ InputStream Stream = null; InputStream inputStream = null; try { //根据uri获取图片的流 inputStream = getContentResolver().openInputStream(uri); BitmapFactory.Opt原创 2021-01-15 11:14:44 · 130 阅读 · 0 评论 -
Android之自定义popwindow
public class SexPopWindow extends PopupWindow { private TextView boy; private TextView girl; public SexPopWindow(Activity context) { LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);原创 2021-01-15 09:43:38 · 484 阅读 · 1 评论 -
Android中对提现金额的限制
//工具类 小数点后两位,如输入002,显示2public class MyWatcher implements TextWatcher { private int beforeDot; private int afterDot; /** * 构造器 * * @param beforeDot 小数点前位数 不限制输入-1 * @param afterDot 小数点后位数 不限制输入-1 */ public MyWa原创 2021-01-14 17:28:09 · 222 阅读 · 1 评论 -
Android中输入框EditText的监听及点击键盘上回车键跳到下一个输入框
bandCardNum.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence pCharSequence, int pI, int pI1, int pI2) { } @Override public void onTextChanged(CharS原创 2021-01-14 11:46:06 · 946 阅读 · 0 评论 -
Android中键盘的监听
1.工具类public class SoftKeyBoardListener { private View rootView;//activity的根视图 int rootViewVisibleHeight;//纪录根视图的显示高度 private OnSoftKeyBoardChangeListener onSoftKeyBoardChangeListener; public SoftKeyBoardListener(Activity activity) {原创 2021-01-14 11:43:01 · 235 阅读 · 0 评论 -
Android中解决键盘弹出时输入框被遮挡问题
1.键盘弹出时屏幕可以滑动在布局里面添加android:fitsSystemWindows="true"2.键盘弹出时把所有内容顶上去(1).首先一个工具类:public class KeyboardLayout extends FrameLayout { private KeyboardLayoutListener mListener; private boolean mIsKeyboardActive = false; //输入法是否激活 private int m原创 2021-01-14 11:28:19 · 1133 阅读 · 1 评论 -
tablayout和viewpager结合viewpager禁止左右滑动
布局中引入MyViewPager即可public class MyViewPager extends ViewPager { /* 更改scrollble的值可设置是否可滑动,默认true为可滑动 */ private boolean scrollble = false; private int startX; private int startY; public MyViewPager(Context context) { s原创 2021-01-13 11:15:36 · 688 阅读 · 0 评论 -
tablayout的一些小知识点
1.tablayout中间添加竖线(1).LinearLayout linearLayout = (LinearLayout) tablayout.getChildAt(0);linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);linearLayout.setDividerDrawable(ContextCompat.getDrawable(this,R.drawable.line));linearLayout.setDiv原创 2021-01-13 11:05:35 · 148 阅读 · 1 评论