Compare commits
12 Commits
master
...
cky_branch
| Author | SHA1 | Date |
|---|---|---|
|
|
e07047e6d9 | 3 years ago |
|
|
02e250bec6 | 3 years ago |
|
|
53f591c765 | 3 years ago |
|
|
4c1996ecd6 | 3 years ago |
|
|
ea80e1db98 | 3 years ago |
|
|
9c2ea67665 | 3 years ago |
|
|
7c814e8851 | 3 years ago |
|
|
018ccb138d | 3 years ago |
|
|
1845068357 | 3 years ago |
|
|
0e00cb2875 | 3 years ago |
|
|
ceb10e5868 | 3 years ago |
|
|
2e51bb117b | 3 years ago |
@ -1,26 +0,0 @@
|
|||||||
1.密码登录
|
|
||||||
操作者:小米便签用户
|
|
||||||
|
|
||||||
前置条件:用户处于登录界面,账号已输入;
|
|
||||||
|
|
||||||
基本事件流:用户输入正确的密码,进入滑块验证界面;
|
|
||||||
|
|
||||||
其他事件流:用户输入的密码错误,密码清除,需要重新输入密码;
|
|
||||||
|
|
||||||
异常事件流:用户输入的账号不存在,密码清除,返回到账号输入栏;
|
|
||||||
|
|
||||||
后置条件:进入滑块验证界面、密码错误、该用户不存在;
|
|
||||||
|
|
||||||
|
|
||||||
2.滑块验证
|
|
||||||
操作者:小米便签用户
|
|
||||||
|
|
||||||
前置条件:用户密码输入正确,跳转至滑块验证界面;
|
|
||||||
|
|
||||||
基本事件流:用户将滑块移动到正确位置,通过验证,进入程序;
|
|
||||||
|
|
||||||
其他事件流:用户将滑块移动到错误的位置,验证失败,滑块界面刷新;
|
|
||||||
|
|
||||||
异常事件流:用户长时间不移动滑块,验证超时,返回登录界面;
|
|
||||||
|
|
||||||
后置条件:进入程序、滑块界面刷新、返回登录界面;
|
|
||||||
|
Before Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 247 KiB |
|
Before Width: | Height: | Size: 247 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 74 KiB |
@ -1,256 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,57 +0,0 @@
|
|||||||
### 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);
|
|
||||||
}
|
|
||||||
//布局文件,设置标题
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
#Fri May 19 11:18:04 CST 2023
|
|
||||||
gradle.version=4.8
|
|
||||||
@ -1,116 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
<?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>
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
<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>
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
<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>
|
|
||||||