小编Mic*_*ele的帖子

在 Android 中运行单元测试时,意图解析为不同的进程

我有一个使用两个活动的小应用程序。这两个活动都继承自 MapActivity 并显示地图 (com.google.android.maps)。

由于 Android 谷歌地图文档说

每个进程仅支持一个 MapActivity。同时运行的多个 MapActivities 可能会以意外和不希望的方式进行干扰。

我修改了我的清单以在两个不同的进程中运行这两个活动(我删除了一些行以使其简短):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapp">

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Light">

    <uses-library android:name="com.google.android.maps" />

    <activity 
        android:name=".Activity1"
        android:process=".Activity1">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>Unit
    </activity>

    <activity
        android:name=".Activity2"
        android:process=".Activity2">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

</application>

<uses-sdk android:minSdkVersion="8" />
</manifest> 
Run Code Online (Sandbox Code Playgroud)

现在应用程序运行良好,但是当我在两个活动上运行单元测试时遇到了问题。例如:

package com.example.myapp;
public class Activity1Test extends ActivityInstrumentationTestCase2<Activity1> {

    Activity1 mActivity;

    public Activity1Test() {
        super("com.example.myapp.Activity1", Activity1.class);
    } …
Run Code Online (Sandbox Code Playgroud)

java junit multithreading android unit-testing

5
推荐指数
1
解决办法
2431
查看次数

标签 统计

android ×1

java ×1

junit ×1

multithreading ×1

unit-testing ×1