我正在尝试在我的 android 应用程序中生成一个代码作为字符串并将其保存到一个文本文件中。当您按下共享按钮时,应该从文本文件中读取代码并将其复制到剪贴板。
我想我不了解有关活动/上下文的内容。当然,我阅读了有关它的文档,但我无法找出问题所在。希望你们能帮助我!
FileSystem.java
package com.niclasjaksch.shoppinglist;
import android.content.Context;
import androidx.appcompat.app.AppCompatActivity;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
class FileSystem extends AppCompatActivity {
static String filename = "shoppinglist_code.txt";
void Create() {
try {
FileOutputStream fOut = openFileOutput(filename, Context.MODE_PRIVATE);
String str = Utility.randomString(10);
fOut.write(str.getBytes());
fOut.close();
} catch (IOException e) {
e.printStackTrace();
}
}
String Read() {
String result = "";
try {
FileInputStream fin = openFileInput(filename);
int c;
while( (c = fin.read()) != -1){
result += c;
}
fin.close();
} catch (Exception e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
return result;
}
void Clear() {
try {
File dir = getFilesDir();
File file = new File(dir, filename);
file.delete();
} catch (Exception e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}
Share.java
package com.niclasjaksch.shoppinglist;
import android.content.ClipData;
import androidx.appcompat.app.AppCompatActivity;
class Share extends AppCompatActivity {
android.content.ClipboardManager clipboardManager = null;
FileSystem fs = new FileSystem();
void Share() {
String code = fs.Read();
if(code == "" || code == null) {
fs.Create();
code = fs.Read();
}
ClipData clipData = ClipData.newPlainText("Source Text", code);
clipboardManager.setPrimaryClip(clipData);
}
}
慕盖茨4494581
眼眸繁星
相关分类