java - 使用 android studio 将数据导出到谷歌表:“不幸的是,我的应用程序已停止”
问题描述
我正在尝试在 youtube 上应用有关在 google sheet 上发布一些数据的教程:
https://www.youtube.com/watch?v=GyuJ2GtpZd0
解释得很好,我做的一切都和那个人一样,但我不明白为什么我的应用程序停止了......我设法毫无问题地构建它(我没有更改布局,我只是添加了类“ Http请求”)。
我对java没有任何了解,我只是复制了教程,代码如下:
package com.example.test;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import java.net.URLEncoder;
public class MainActivity extends Activity {
final String myTag = "DocsUpload";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i(myTag, "OnCreate()");
Thread t = new Thread(new Runnable() {
@Override
public void run() {
postData();
}
});
t.start();
}
public void postData() {
String fullUrl = "https://docs.google.com/forms/d/e/1FAIpQLSeADSNYrRj2c8ctLn5Q0M7taM6ayYnykFbp3oZI_xorAt6gKg/formResponse";
HttpRequest mReq = new HttpRequest();
String col1 = "Hello";
String data = "entry.1529019979=" + URLEncoder.encode(col1);
String response = mReq.sendPost(fullUrl, data);
Log.i(myTag, response);
}
}
以下是显示的错误:
10-28 18:23:35.254 10736-10736/? E/libprocessgroup: failed to make and chown /acct/uid_10057: Read-only file system
10-28 18:23:35.353 10736-10752/? E/Your App Name Here: HttpUtils: java.lang.SecurityException: Permission denied (missing INTERNET permission?)
10-28 18:23:35.354 10736-10752/? E/AndroidRuntime: FATAL EXCEPTION: Thread-602
Process: com.example.test, PID: 10736
java.lang.NullPointerException: println needs a message
at android.util.Log.println_native(Native Method)
at android.util.Log.i(Log.java:160)
at com.example.test.MainActivity.postData(MainActivity.java:40)
at com.example.test.MainActivity$1.run(MainActivity.java:23)
at java.lang.Thread.run(Thread.java:818)
10-28 18:23:35.694 10736-10753/? E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008cdf
10-28 18:23:35.695 10736-10753/? E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008824
请问,有人可以帮我吗?这份报告中的任何内容我都看不懂...
非常感谢!
解决方案
您必须在文件中添加INTERNET
权限AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />
推荐阅读
- javascript - 如何使用 Vanilla Js 格式化嵌套的 Json
- kubernetes - 你可以在 openshift 中不使用 statefulsets 运行 Zookeeper 集群吗?
- ios - UITextView 在 CollectionViewCell 内不显示键盘
- xcode - Bash:自动将文件添加到 Xcode 项目?
- regex - Regex - get "1,546 messages" string inside list
- vmware - 需要帮助从主机中的来宾访问 .html 文件 (VMWare 16)
- amazon-web-services - AWS Codepipeline Spring Boot War 文件
- bash - TEST_PROFILE="${1-}" 和 ${TEST_PROFILE-} 行中符号`-`的作用是什么?
- c# - 从字典中使用 Linq 仅选择指定的键
- email - Outlook 草稿邮件在发送时更改不可变 ID