Compare commits
40 Commits
cky_branch
...
master
Author | SHA1 | Date |
---|---|---|
|
31d768998e | 2 years ago |
|
665c75a083 | 2 years ago |
|
c203ffb457 | 2 years ago |
|
36953186f3 | 2 years ago |
|
8c36b7107a | 2 years ago |
|
fb25171338 | 2 years ago |
|
caff9eec59 | 2 years ago |
|
2da89d92f9 | 2 years ago |
|
c2ce7d5c93 | 2 years ago |
|
81265bfcf1 | 2 years ago |
|
4ba14466e4 | 2 years ago |
|
d964e6b384 | 2 years ago |
|
8bb8ee71d9 | 2 years ago |
|
bbec842944 | 2 years ago |
|
1a4ec50ea9 | 2 years ago |
|
2153045644 | 2 years ago |
|
9de09cd50d | 2 years ago |
|
1260fbe4f3 | 2 years ago |
|
a95581f27f | 2 years ago |
|
a2722b990b | 2 years ago |
|
166b2f3d65 | 2 years ago |
|
0201af0eae | 2 years ago |
|
abdf49e29e | 2 years ago |
|
0ace2eb676 | 2 years ago |
|
2209c5b410 | 2 years ago |
|
e0adcba2cc | 2 years ago |
|
fcd501a02c | 2 years ago |
|
1f6b2e6250 | 2 years ago |
|
d7f67b0aa6 | 2 years ago |
|
11b39e8396 | 2 years ago |
|
00a3a962e4 | 2 years ago |
|
3e3d8ec5c1 | 2 years ago |
|
60865a813c | 2 years ago |
|
2579e62334 | 2 years ago |
|
0ea51bbb15 | 2 years ago |
|
061e5667db | 2 years ago |
|
6a29228bf6 | 2 years ago |
|
0a31c20a3a | 2 years ago |
|
83ea150222 | 2 years ago |
|
07fff7385c | 2 years ago |
@ -0,0 +1,26 @@
|
|||||||
|
1.密码登录
|
||||||
|
操作者:小米便签用户
|
||||||
|
|
||||||
|
前置条件:用户处于登录界面,账号已输入;
|
||||||
|
|
||||||
|
基本事件流:用户输入正确的密码,进入滑块验证界面;
|
||||||
|
|
||||||
|
其他事件流:用户输入的密码错误,密码清除,需要重新输入密码;
|
||||||
|
|
||||||
|
异常事件流:用户输入的账号不存在,密码清除,返回到账号输入栏;
|
||||||
|
|
||||||
|
后置条件:进入滑块验证界面、密码错误、该用户不存在;
|
||||||
|
|
||||||
|
|
||||||
|
2.滑块验证
|
||||||
|
操作者:小米便签用户
|
||||||
|
|
||||||
|
前置条件:用户密码输入正确,跳转至滑块验证界面;
|
||||||
|
|
||||||
|
基本事件流:用户将滑块移动到正确位置,通过验证,进入程序;
|
||||||
|
|
||||||
|
其他事件流:用户将滑块移动到错误的位置,验证失败,滑块界面刷新;
|
||||||
|
|
||||||
|
异常事件流:用户长时间不移动滑块,验证超时,返回登录界面;
|
||||||
|
|
||||||
|
后置条件:进入程序、滑块界面刷新、返回登录界面;
|
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 105 KiB |
After Width: | Height: | Size: 98 KiB |
After Width: | Height: | Size: 247 KiB |
After Width: | Height: | Size: 247 KiB |
Before Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 123 KiB |
After Width: | Height: | Size: 74 KiB |
@ -0,0 +1,256 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package net.micode.notes.model;
|
||||||
|
import android.content.ContentProviderOperation; //批量更新、插入、删除数据
|
||||||
|
import android.content.ContentProviderResult;//操作结果
|
||||||
|
import android.content.ContentUris;//添加和获取Uri后面的ID
|
||||||
|
import android.content.ContentValues;//一种存储基本数据类型数据的存储机制
|
||||||
|
import android.content.Context;//使用该类弄清楚调用者的实例
|
||||||
|
import android.content.OperationApplicationException;//操作应用程序容错
|
||||||
|
import android.net.Uri;//待操作的数据
|
||||||
|
import android.os.RemoteException;//远程容错
|
||||||
|
import android.util.Log;//输出日志
|
||||||
|
|
||||||
|
import net.micode.notes.data.Notes;
|
||||||
|
import net.micode.notes.data.Notes.CallNote;
|
||||||
|
import net.micode.notes.data.Notes.DataColumns;
|
||||||
|
import net.micode.notes.data.Notes.NoteColumns;
|
||||||
|
import net.micode.notes.data.Notes.TextNote;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
|
||||||
|
public class Note {
|
||||||
|
private ContentValues mNoteDiffValues;
|
||||||
|
private NoteData mNoteData;
|
||||||
|
private static final String TAG = "Note";
|
||||||
|
/**
|
||||||
|
* Create a new note id for adding a new note to databases
|
||||||
|
*/
|
||||||
|
public static synchronized long getNewNoteId(Context context, long folderId) {
|
||||||
|
// Create a new note in the database
|
||||||
|
ContentValues values = new ContentValues();
|
||||||
|
long createdTime = System.currentTimeMillis();
|
||||||
|
values.put(NoteColumns.CREATED_DATE, createdTime);
|
||||||
|
values.put(NoteColumns.MODIFIED_DATE, createdTime);
|
||||||
|
values.put(NoteColumns.TYPE, Notes.TYPE_NOTE);
|
||||||
|
values.put(NoteColumns.LOCAL_MODIFIED, 1);
|
||||||
|
values.put(NoteColumns.PARENT_ID, folderId);//把数据写入数据库表格
|
||||||
|
Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values);//ContentResolver()主要是实现外部应用对ContentProvider中的数据进行添加、删除、修改和查询操作
|
||||||
|
|
||||||
|
|
||||||
|
long noteId = 0;
|
||||||
|
try {
|
||||||
|
noteId = Long.valueOf(uri.getPathSegments().get(1));
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
Log.e(TAG, "Get note id error :" + e.toString());
|
||||||
|
noteId = 0;
|
||||||
|
}//try-catch异常处理
|
||||||
|
if (noteId == -1) {
|
||||||
|
throw new IllegalStateException("Wrong note id:" + noteId);
|
||||||
|
}
|
||||||
|
return noteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Note() {
|
||||||
|
mNoteDiffValues = new ContentValues();
|
||||||
|
mNoteData = new NoteData();
|
||||||
|
}//定义两个变量用来存储便签的数据,一个是存储便签属性、一个是存储便签内容
|
||||||
|
|
||||||
|
public void setNoteValue(String key, String value) {
|
||||||
|
mNoteDiffValues.put(key, value);
|
||||||
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
||||||
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
||||||
|
}//设置数据库表格的便签属性数据
|
||||||
|
|
||||||
|
public void setTextData(String key, String value) {
|
||||||
|
mNoteData.setTextData(key, value);
|
||||||
|
}//设置数据库表格的便签文本内容的数据
|
||||||
|
|
||||||
|
public void setTextDataId(long id) {
|
||||||
|
mNoteData.setTextDataId(id);
|
||||||
|
}//设置文本数据的ID
|
||||||
|
|
||||||
|
public long getTextDataId() {
|
||||||
|
return mNoteData.mTextDataId;
|
||||||
|
} //得到文本数据的ID
|
||||||
|
|
||||||
|
public void setCallDataId(long id) {
|
||||||
|
mNoteData.setCallDataId(id);
|
||||||
|
} //设置电话号码数据的ID
|
||||||
|
|
||||||
|
|
||||||
|
public void setCallData(String key, String value) {
|
||||||
|
mNoteData.setCallData(key, value);
|
||||||
|
} //得到电话号码数据的ID
|
||||||
|
|
||||||
|
public boolean isLocalModified() {
|
||||||
|
return mNoteDiffValues.size() > 0 || mNoteData.isLocalModified();
|
||||||
|
}//判断是否为本地修改
|
||||||
|
|
||||||
|
public boolean syncNote(Context context, long noteId) {
|
||||||
|
if (noteId <= 0) {
|
||||||
|
throw new IllegalArgumentException("Wrong note id:" + noteId);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isLocalModified()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* In theory, once data changed, the note should be updated on {@link NoteColumns#LOCAL_MODIFIED} and
|
||||||
|
* {@link NoteColumns#MODIFIED_DATE}. For data safety, though update note fails, we also update the
|
||||||
|
* note data info
|
||||||
|
*/
|
||||||
|
if (context.getContentResolver().update(
|
||||||
|
ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), mNoteDiffValues, null,
|
||||||
|
null) == 0) {
|
||||||
|
Log.e(TAG, "Update note error, should not happen");
|
||||||
|
// Do not return, fall through
|
||||||
|
}
|
||||||
|
mNoteDiffValues.clear();
|
||||||
|
|
||||||
|
if (mNoteData.isLocalModified()
|
||||||
|
&& (mNoteData.pushIntoContentResolver(context, noteId) == null)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}//判断数据是否同步
|
||||||
|
|
||||||
|
private class NoteData { //定义一个基本便签内容的数据类,包含文本数据和电话号码数据
|
||||||
|
private long mTextDataId;
|
||||||
|
|
||||||
|
private ContentValues mTextDataValues; //文本数据
|
||||||
|
|
||||||
|
private long mCallDataId;
|
||||||
|
|
||||||
|
private ContentValues mCallDataValues; //电话号码数据
|
||||||
|
|
||||||
|
private static final String TAG = "NoteData";
|
||||||
|
|
||||||
|
public NoteData() {
|
||||||
|
mTextDataValues = new ContentValues();
|
||||||
|
mCallDataValues = new ContentValues();
|
||||||
|
mTextDataId = 0;
|
||||||
|
mCallDataId = 0;
|
||||||
|
}
|
||||||
|
//上述几个函数的具体实现
|
||||||
|
boolean isLocalModified() {
|
||||||
|
return mTextDataValues.size() > 0 || mCallDataValues.size() > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void setTextDataId(long id) {
|
||||||
|
if(id <= 0) {
|
||||||
|
throw new IllegalArgumentException("Text data id should larger than 0");
|
||||||
|
}
|
||||||
|
mTextDataId = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
void setCallDataId(long id) {
|
||||||
|
if (id <= 0) {
|
||||||
|
throw new IllegalArgumentException("Call data id should larger than 0");
|
||||||
|
}
|
||||||
|
mCallDataId = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
void setCallData(String key, String value) {
|
||||||
|
mCallDataValues.put(key, value);
|
||||||
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
||||||
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
||||||
|
}
|
||||||
|
|
||||||
|
void setTextData(String key, String value) {
|
||||||
|
mTextDataValues.put(key, value);
|
||||||
|
mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
|
||||||
|
mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
|
||||||
|
}
|
||||||
|
//将新的数据通过Uri的操作存储到数据库
|
||||||
|
Uri pushIntoContentResolver(Context context, long noteId) {
|
||||||
|
/**
|
||||||
|
* Check for safety
|
||||||
|
*/
|
||||||
|
if (noteId <= 0) {
|
||||||
|
throw new IllegalArgumentException("Wrong note id:" + noteId);
|
||||||
|
}//判断数据是否合法
|
||||||
|
|
||||||
|
ArrayList<ContentProviderOperation> operationList = new ArrayList<ContentProviderOperation>();
|
||||||
|
ContentProviderOperation.Builder builder = null; //数据库操作列表
|
||||||
|
|
||||||
|
if(mTextDataValues.size() > 0) {
|
||||||
|
mTextDataValues.put(DataColumns.NOTE_ID, noteId);
|
||||||
|
if (mTextDataId == 0) {
|
||||||
|
mTextDataValues.put(DataColumns.MIME_TYPE, TextNote.CONTENT_ITEM_TYPE);
|
||||||
|
Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI,
|
||||||
|
mTextDataValues);
|
||||||
|
try {
|
||||||
|
setTextDataId(Long.valueOf(uri.getPathSegments().get(1)));
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
Log.e(TAG, "Insert new text data fail with noteId" + noteId);
|
||||||
|
mTextDataValues.clear();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId(
|
||||||
|
Notes.CONTENT_DATA_URI, mTextDataId));
|
||||||
|
builder.withValues(mTextDataValues);
|
||||||
|
operationList.add(builder.build());
|
||||||
|
}
|
||||||
|
mTextDataValues.clear();
|
||||||
|
}//文本数据存入DataColumns
|
||||||
|
|
||||||
|
if(mCallDataValues.size() > 0) {
|
||||||
|
mCallDataValues.put(DataColumns.NOTE_ID, noteId);
|
||||||
|
if (mCallDataId == 0) {
|
||||||
|
mCallDataValues.put(DataColumns.MIME_TYPE, CallNote.CONTENT_ITEM_TYPE);
|
||||||
|
Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI,
|
||||||
|
mCallDataValues);
|
||||||
|
try {
|
||||||
|
setCallDataId(Long.valueOf(uri.getPathSegments().get(1)));
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
Log.e(TAG, "Insert new call data fail with noteId" + noteId);
|
||||||
|
mCallDataValues.clear();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId(
|
||||||
|
Notes.CONTENT_DATA_URI, mCallDataId));
|
||||||
|
builder.withValues(mCallDataValues);
|
||||||
|
operationList.add(builder.build());
|
||||||
|
}
|
||||||
|
mCallDataValues.clear();
|
||||||
|
}//电话号码数据存入DataColumns
|
||||||
|
|
||||||
|
|
||||||
|
if (operationList.size() > 0) {
|
||||||
|
try {
|
||||||
|
ContentProviderResult[] results = context.getContentResolver().applyBatch(
|
||||||
|
Notes.AUTHORITY, operationList);
|
||||||
|
return (results == null || results.length == 0 || results[0] == null) ? null
|
||||||
|
: ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
|
||||||
|
return null;
|
||||||
|
} catch (OperationApplicationException e) {
|
||||||
|
Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}//存储过程中的异常处理
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
### DropdownMenu.java
|
||||||
|
|
||||||
|
```java
|
||||||
|
package net.micode.notes.ui;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuItem;
|
||||||
|
import android.view.View;
|
||||||
|
import android.view.View.OnClickListener;
|
||||||
|
import android.widget.Button;
|
||||||
|
import android.widget.PopupMenu;
|
||||||
|
import android.widget.PopupMenu.OnMenuItemClickListener;
|
||||||
|
|
||||||
|
import net.micode.notes.R;
|
||||||
|
|
||||||
|
public class DropdownMenu {
|
||||||
|
private Button mButton;
|
||||||
|
private PopupMenu mPopupMenu;
|
||||||
|
//声明一个下拉菜单
|
||||||
|
private Menu mMenu;
|
||||||
|
|
||||||
|
public DropdownMenu(Context context, Button button, int menuId) {
|
||||||
|
mButton = button;
|
||||||
|
mButton.setBackgroundResource(R.drawable.dropdown_icon);
|
||||||
|
//设置这个view的背景
|
||||||
|
mPopupMenu = new PopupMenu(context, mButton);
|
||||||
|
mMenu = mPopupMenu.getMenu();
|
||||||
|
mPopupMenu.getMenuInflater().inflate(menuId, mMenu);
|
||||||
|
//MenuInflater是用来实例化Menu目录下的Menu布局文件
|
||||||
|
//根据ID来确认menu的内容选项
|
||||||
|
mButton.setOnClickListener(new OnClickListener() {
|
||||||
|
public void onClick(View v) {
|
||||||
|
mPopupMenu.show();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOnDropdownMenuItemClickListener(OnMenuItemClickListener listener) {
|
||||||
|
if (mPopupMenu != null) {
|
||||||
|
mPopupMenu.setOnMenuItemClickListener(listener);
|
||||||
|
}
|
||||||
|
//设置菜单的监听
|
||||||
|
}
|
||||||
|
|
||||||
|
public MenuItem findItem(int id) {
|
||||||
|
return mMenu.findItem(id);
|
||||||
|
}
|
||||||
|
//对于菜单选项的初始化,根据索引搜索菜单需要的选项
|
||||||
|
|
||||||
|
public void setTitle(CharSequence title) {
|
||||||
|
mButton.setText(title);
|
||||||
|
}
|
||||||
|
//布局文件,设置标题
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
@ -0,0 +1,2 @@
|
|||||||
|
#Fri May 19 11:18:04 CST 2023
|
||||||
|
gradle.version=4.8
|
@ -0,0 +1,116 @@
|
|||||||
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
|
<code_scheme name="Project" version="173">
|
||||||
|
<codeStyleSettings language="XML">
|
||||||
|
<indentOptions>
|
||||||
|
<option name="CONTINUATION_INDENT_SIZE" value="4" />
|
||||||
|
</indentOptions>
|
||||||
|
<arrangement>
|
||||||
|
<rules>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>xmlns:android</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>xmlns:.*</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
<order>BY_NAME</order>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>.*:id</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>.*:name</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>name</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>style</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>.*</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
<order>BY_NAME</order>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>.*</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
<order>ANDROID_ATTRIBUTE_ORDER</order>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<rule>
|
||||||
|
<match>
|
||||||
|
<AND>
|
||||||
|
<NAME>.*</NAME>
|
||||||
|
<XML_ATTRIBUTE />
|
||||||
|
<XML_NAMESPACE>.*</XML_NAMESPACE>
|
||||||
|
</AND>
|
||||||
|
</match>
|
||||||
|
<order>BY_NAME</order>
|
||||||
|
</rule>
|
||||||
|
</section>
|
||||||
|
</rules>
|
||||||
|
</arrangement>
|
||||||
|
</codeStyleSettings>
|
||||||
|
</code_scheme>
|
||||||
|
</component>
|
@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="GradleSettings">
|
||||||
|
<option name="linkedExternalProjectsSettings">
|
||||||
|
<GradleProjectSettings>
|
||||||
|
<option name="distributionType" value="DEFAULT_WRAPPED" />
|
||||||
|
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||||
|
<option name="modules">
|
||||||
|
<set>
|
||||||
|
<option value="$PROJECT_DIR$" />
|
||||||
|
<option value="$PROJECT_DIR$/app" />
|
||||||
|
<option value="$PROJECT_DIR$/app2" />
|
||||||
|
<option value="$PROJECT_DIR$/captcha" />
|
||||||
|
</set>
|
||||||
|
</option>
|
||||||
|
<option name="resolveModulePerSourceSet" value="false" />
|
||||||
|
<option name="testRunner" value="PLATFORM" />
|
||||||
|
</GradleProjectSettings>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
</project>
|
@ -0,0 +1,12 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:animated-vector-drawable:25.3.1@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/animated-vector-drawable-25.3.1.aar/296be10dda7cfb63e40195a66ee3bdd8/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/animated-vector-drawable-25.3.1.aar/296be10dda7cfb63e40195a66ee3bdd8/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/animated-vector-drawable/25.3.1/b1b1bbef0d5f6c105a4a403594d0503ee05b271e/animated-vector-drawable-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:appcompat-v7:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/appcompat-v7-25.3.1.aar/261e1b598b12eb615a1bbf4791b4d69d/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/appcompat-v7-25.3.1.aar/261e1b598b12eb615a1bbf4791b4d69d/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/appcompat-v7-25.3.1.aar/261e1b598b12eb615a1bbf4791b4d69d/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/appcompat-v7/25.3.1/97d3ad2e852f173c8a563752d9908e68e1e10a0a/appcompat-v7-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,13 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-annotations:25.3.1@jar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-annotations/25.3.1/bf8841d29fa39e077730e7a91222c2ce269fa7c9/support-annotations-25.3.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-annotations/25.3.1/ff19cf8cd80e7499b167e095c9dd31b7ef087ac/support-annotations-25.3.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-annotations/25.3.1/108de685cf877f6c25794df888d831e5eec0d3f5/support-annotations-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-compat:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-compat-25.3.1.aar/e41d568866fd89a65e124015fa6b1302/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-compat-25.3.1.aar/e41d568866fd89a65e124015fa6b1302/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-compat-25.3.1.aar/e41d568866fd89a65e124015fa6b1302/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-compat/25.3.1/8b1eabbc900b9d9e9d91b74227cad226525992bd/support-compat-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-core-ui:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-ui-25.3.1.aar/e1c6df3414b6c7179c82c2f903b05950/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-ui-25.3.1.aar/e1c6df3414b6c7179c82c2f903b05950/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-ui-25.3.1.aar/e1c6df3414b6c7179c82c2f903b05950/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-core-ui/25.3.1/6d98435ae74fad3980fe9b2edf8a72a258ba69a8/support-core-ui-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-core-utils:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-utils-25.3.1.aar/be8c836df5b0a4144bdc2d10d8f9c62d/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-utils-25.3.1.aar/be8c836df5b0a4144bdc2d10d8f9c62d/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-core-utils-25.3.1.aar/be8c836df5b0a4144bdc2d10d8f9c62d/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-core-utils/25.3.1/5ba0a59688a5aa4bc69388dd823b8e20c7f25b01/support-core-utils-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-fragment:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-fragment-25.3.1.aar/afb598df6dbdc81dbcde34f00950876d/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-fragment-25.3.1.aar/afb598df6dbdc81dbcde34f00950876d/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-fragment-25.3.1.aar/afb598df6dbdc81dbcde34f00950876d/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-fragment/25.3.1/ff167b0a93b9e42346c601451fd4ca983748aae9/support-fragment-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,15 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-media-compat:25.3.1@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-media-compat-25.3.1.aar/437048615992466bfa98f2060adc8fa1/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-media-compat-25.3.1.aar/437048615992466bfa98f2060adc8fa1/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-media-compat-25.3.1.aar/437048615992466bfa98f2060adc8fa1/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-media-compat/25.3.1/bf9bf1bf323b0f2b0d1246127fb751392b30e8d4/support-media-compat-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,10 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-v4:25.3.1@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-v4-25.3.1.aar/d862c0f329933bdd89705383bd58c704/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-v4-25.3.1.aar/d862c0f329933bdd89705383bd58c704/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES />
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,12 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support:support-vector-drawable:25.3.1@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-vector-drawable-25.3.1.aar/ad1af1dc12e53765852059271077c3b5/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/support-vector-drawable-25.3.1.aar/ad1af1dc12e53765852059271077c3b5/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support/support-vector-drawable/25.3.1/cb18c683fcc4d418533cd205c38ba74e1956c3a6/support-vector-drawable-25.3.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,14 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support.test.espresso:espresso-core:2.2.2@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/espresso-core-2.2.2.aar/d9392be93e8a9c0fec0f23fd4f7010d5/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/espresso-core-2.2.2.aar/d9392be93e8a9c0fec0f23fd4f7010d5/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-core/2.2.2/385a61d4e1b44503072bb72999bb4cb0ded833a8/espresso-core-2.2.2-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-core/2.2.2/114039ff105fc481a629b55882f2c5c7a614e32a/espresso-core-2.2.2-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,14 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support.test.espresso:espresso-idling-resource:2.2.2@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/espresso-idling-resource-2.2.2.aar/255286bf73379b349e2c7033ed37d007/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/espresso-idling-resource-2.2.2.aar/255286bf73379b349e2c7033ed37d007/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-idling-resource/2.2.2/6e4abb9731a9fc3648c08b8dd436c4526ac0a4cf/espresso-idling-resource-2.2.2-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-idling-resource/2.2.2/bc8e66874feb004144562e64053cf95b4c7b3eb7/espresso-idling-resource-2.2.2-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,14 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support.test:exposed-instrumentation-api-publish:0.5@aar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/exposed-instrumentation-api-publish-0.5.aar/97aeb44abae8473f56b09c115f0d74a2/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/exposed-instrumentation-api-publish-0.5.aar/97aeb44abae8473f56b09c115f0d74a2/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/exposed-instrumentation-api-publish/0.5/81d0ed6618547b96baa84c6da154c88bc3a98cea/exposed-instrumentation-api-publish-0.5-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/exposed-instrumentation-api-publish/0.5/493e9b2f2905ddc7f1a152446cc1d9d00ded10b0/exposed-instrumentation-api-publish-0.5-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,17 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support.test:rules:0.5@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/rules-0.5.aar/f67006b03a2f7dd8e6e04098c97c1cc2/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/rules-0.5.aar/f67006b03a2f7dd8e6e04098c97c1cc2/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/rules-0.5.aar/f67006b03a2f7dd8e6e04098c97c1cc2/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/rules/0.5/71c1df91db9f063a68e2e52a8568c9f3bd3c1c73/rules-0.5-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/rules/0.5/eb0523edeca93697d4c4b767277b407ed5920258/rules-0.5-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,17 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.android.support.test:runner:0.5@aar">
|
||||||
|
<ANNOTATIONS>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/runner-0.5.aar/d729292e85528f4eed6e7a0a42da2f47/annotations.zip!/" />
|
||||||
|
</ANNOTATIONS>
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/runner-0.5.aar/d729292e85528f4eed6e7a0a42da2f47/jars/classes.jar!/" />
|
||||||
|
<root url="file://D:/Android/.gradle/gradle-7.4/caches/transforms-1/files-1.1/runner-0.5.aar/d729292e85528f4eed6e7a0a42da2f47/res" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/runner/0.5/589b6022d69d9f1fe8f0a79f10408326a5b0f648/runner-0.5-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.android.support.test/runner/0.5/d13156b1f4d8dc7013cd8b3b1284b22bd3b44d23/runner-0.5-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,13 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.github.bumptech.glide:glide:3.7.0@jar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.github.bumptech.glide/glide/3.7.0/9e9eeaf9948ee4d6c3ab354e8dc14368f16994a4/glide-3.7.0.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.github.bumptech.glide/glide/3.7.0/3b81fa9bed485ed6a6bc46546b580cadf80a64f1/glide-3.7.0-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.github.bumptech.glide/glide/3.7.0/24a0b0e63af9530bcedd06ed1983a4f2f02155a3/glide-3.7.0-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,9 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.google.code.findbugs:jsr305:2.0.1@jar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/2.0.1/516c03b21d50a644d538de0f0369c620989cd8f0/jsr305-2.0.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC />
|
||||||
|
<SOURCES />
|
||||||
|
</library>
|
||||||
|
</component>
|
@ -0,0 +1,13 @@
|
|||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Gradle: com.squareup:javawriter:2.1.1@jar">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/67ff45d9ae02e583d0f9b3432a5ebbe05c30c966/javawriter-2.1.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/f591a105db78771d0a1e7a277b3747556c528c22/javawriter-2.1.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://D:/Android/.gradle/gradle-7.4/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/5b31387d839a5cdaf5b6de3990da01f7f2b963c5/javawriter-2.1.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|