我的资产文件夹有一个子文件夹树..我正在尝试访问该目录中的pdf ..网址如下
url = QP/28/28/mth.pdf
Run Code Online (Sandbox Code Playgroud)
完整目录如下
ful directory = file:///data/data/com.example.testqstn/files/QP/28/28/mth.pdf
Run Code Online (Sandbox Code Playgroud)
我使用以下代码访问了路径
intent.setDataAndType(Uri.parse("file://" + getApplicationContext().getFilesDir()
+ "/"+url), "application/pdf");
startActivity(intent);
finish();
Run Code Online (Sandbox Code Playgroud)
我没有得到任何错误消息,但pdf没有打开..当没有使用子文件夹,并且pdf只是出现在资产文件夹..然后pdf打开正确..所以究竟是什么问题? ?
并且日志cat没有显示任何错误..
我的项目运行良好,直到我为我的微调器声明了一个onItemSelctedListener ..现在我的项目没有运行..并且日志猫显示以下错误...
03-03 01:59:08.465: E/AndroidRuntime(1401):
FATAL EXCEPTION: main
Process: com.example.testqstn, PID: 1401
java.lang.RuntimeException: Unable to instantiate activity
ComponentInfo{com.example.testqstn/com.example.testqstn.MainActivity}:
java.lang.IllegalStateException: System services not available to Activities
before onCreate()
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: System services not available to Activities before onCreate()
at android.app.Activity.getSystemService(Activity.java:4532)
at android.widget.ArrayAdapter.init(ArrayAdapter.java:310)
at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:153)
at com.example.testqstn.MainActivity.<init>(MainActivity.java:39)
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1208)
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
at …
Run Code Online (Sandbox Code Playgroud) 我试图将一个值从1个活动传递给另一个,该值来自于intent方法..但是在将值传递给第二个intent时我得到一个空指针异常..所以我做错了什么?在main方法中(url有一个值)
public void passStringToIntent(String url) {
final Intent intent = new Intent(Question_Point_Main.this, AccessPdf.class);
intent.putExtra("URL", url);
startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)
在第二种方法(访问值)
Intent intent = getIntent();
String url = intent.getStringExtra("URL");
Run Code Online (Sandbox Code Playgroud)
我的日志猫如下
E/AndroidRuntime(1892): FATAL EXCEPTION: main
E/AndroidRuntime(1892): Process: com.example.testqstn, PID: 1892
E/AndroidRuntime(1892): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.testqstn/com.questionpoint.pdf.AccessPdf}: java.lang.NullPointerException
E/AndroidRuntime(1892): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
E/AndroidRuntime(1892): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
E/AndroidRuntime(1892): at android.app.ActivityThread.access$800(ActivityThread.java:135)
E/AndroidRuntime(1892): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
E/AndroidRuntime(1892): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(1892): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(1892): at android.app.ActivityThread.main(ActivityThread.java:5017)
E/AndroidRuntime(1892): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(1892): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(1892): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
E/AndroidRuntime(1892): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
E/AndroidRuntime(1892): at …
Run Code Online (Sandbox Code Playgroud)