Приложение, которое я разработал, не открывается, когда я нажимаю на него

Используя вышеупомянутые комментарии и решения, я сохраняю все параметры запроса, используя Map & lt; String, Object & gt; где Objects может быть строкой или Set & lt; String & gt ;. Решение приведено ниже. Рекомендуется использовать какой-либо валидатор URL для проверки подлинности URL-адреса, а затем вызвать метод convertQueryStringToMap.

private static final String DEFAULT_ENCODING_SCHEME = "UTF-8";

public static Map<String, Object> convertQueryStringToMap(String url) throws UnsupportedEncodingException, URISyntaxException {
    List<NameValuePair> params = URLEncodedUtils.parse(new URI(url), DEFAULT_ENCODING_SCHEME);
    Map<String, Object> queryStringMap = new HashMap<>();
    for(NameValuePair param : params){
        queryStringMap.put(param.getName(), handleMultiValuedQueryParam(queryStringMap, param.getName(), param.getValue()));
    }
    return queryStringMap;
}

private static Object handleMultiValuedQueryParam(Map responseMap, String key, String value) {
    if (!responseMap.containsKey(key)) {
        return value.contains(",") ? new HashSet<String>(Arrays.asList(value.split(","))) : value;
    } else {
        Set<String> queryValueSet = responseMap.get(key) instanceof Set ? (Set<String>) responseMap.get(key) : new HashSet<String>();
        if (value.contains(",")) {
            queryValueSet.addAll(Arrays.asList(value.split(",")));
        } else {
            queryValueSet.add(value);
        }
        return queryValueSet;
    }
}
0
задан Deep Patel 16 January 2019 в 05:26
поделиться

2 ответа

Переход от

<activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
            <action android:name="android.intent.action.VIEW"></action>

            <category android:name="android.intent.category.DEFAULT"></category>
            <category android:name="android.intent.category.BROWSABLE"></category>

            <data
                android:host="www.example.net"
                android:scheme="https"></data>
        </intent-filter>

    </activity>

к этому

<activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>

            <action android:name="android.intent.action.VIEW"></action>

            <category android:name="android.intent.category.DEFAULT"></category>
            <category android:name="android.intent.category.BROWSABLE"></category>

            <data
                android:host="www.example.net"
                android:scheme="https"></data>
        </intent-filter>

    </activity>

решил мою проблему.

0
ответ дан Mert Doe 16 January 2019 в 05:26
поделиться

Вы определили launcher activity в AndroidManifest.xml внутри <application>...</application>?

<activity
    android:name=".ui.MainActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

Чтобы сделать ваше приложение launchable, покажите кнопку Open в Play store и значок в панели запуска телефона). Вы должны определить деятельность с категорией намерения LAUNCHER

0
ответ дан Minas 16 January 2019 в 05:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: